我在文件中输入了如下代码:package cn.com;public class Test
{
int i;
public Test(int i)
{
this.i=i;
} public void print()
{
system.out.println(i);
}
}这样的一个类。但在用javac -d . Test.java编译时出现了一个不解的错误:
e:\javalesson\Test.java:3: class Test is public, should be declared in a file named
Test.java
public class Test
^
1 error是什么的原因?
是不是环境变量的设置有关系?但应该不是啊。
还是与jdk的版本有关系?
{
int i;
public Test(int i)
{
this.i=i;
} public void print()
{
system.out.println(i);
}
}这样的一个类。但在用javac -d . Test.java编译时出现了一个不解的错误:
e:\javalesson\Test.java:3: class Test is public, should be declared in a file named
Test.java
public class Test
^
1 error是什么的原因?
是不是环境变量的设置有关系?但应该不是啊。
还是与jdk的版本有关系?
你看,你的Test类应该写到Test.java文件内,你做到了,.但是你的package不对,.java的包结构和目录结构是一一对应的,区别于C#.
还有print()方法中的System要首字母大写!!!
javac -d . Test.java-d 后面多了个点
但为什么我不把类定义为public时可以通过?
e:\javalesson\Test.java这两个就足够说明问题了.我前面都白说了... ...
我是在ultra-edit32中写的,有自动功能。
但为什么我不把类定义为public时可以通过?
====
这就是类名和文件名要不一致的表现!
居然发言发了这么多? 你们真的是研究Java的嘛? 反正我是C++程序员.package cn.com;
e:\javalesson\Test.java这两个就足够说明问题了.我前面都白说了... ...=====================================楼主都用-d编译了,和你说的包、目录没有关系,看来你是白说了。。