日期:2014-05-20  浏览次数:20672 次

java的文件名不是必须和类名一样?
为什么下面这个程序是放在Sport.java里的而不是Athelete里的也能运行
输入javac Sport.java 然后java Athelet 就能输出了

interface Sport
{
void run();
void jump();
}
class Athelete
{
public static void main (String[] args)
{
Athelete at=new Athelete();
at.run();
at.jump();
}
public void run()
{
System.out.println("长跑");
}
public void jump()
{
System.out.println("三级跳");
}

}

------解决方案--------------------
文件中必须存在某个类与该文件同名,否则才会编译报错
------解决方案--------------------
如果类名Athelet 前加上public,那么文件名就必须跟类名相同。
------解决方案--------------------
2L正解!

文件名必须和代码中的一个(也是唯一一个)public类的名字相同~