Java空类名

时间:2014-03-01 05:57:59

标签: java

我知道在java中,文件名应该始终与类名相同。如果文件名是test.java,那么类名应该是test。

但在我读完site之后,问题8告诉我们我们可以有空类名。

间接地,这意味着文件名与类名不同。

所以我感到困惑,再次在互联网上搜索,发现这些链接Why are filenames in Java the same as the class name?Can I compile a java file with a different name than the class?

两者都说类名应该等于文件名。

之后我尝试在eclipse中创建一个空文件,但它不允许我。如果不输入文件名,则不会启用完成按钮。

有人可以告诉我网站上给出的答案是对还是错?

注意我知道我们可以使用与文件名不同的类名,前提是该类不应该是 public 。如果该类不公开且文件名不同从类名然后JVM找不到主方法

2 个答案:

答案 0 :(得分:1)

他们声称.java是一个合法的java源文件名称,并且生成的.class文件名将取自该类的名称如来源所述。

这可能是真的。但坦率地说,如果有任何面试官问你这个技巧问题,那么正确的答案是“也许,但实践可能会非常糟糕。”

答案 1 :(得分:0)

如果您将类声明为public,则文件名和类名必须相同,否则您可以在文件中使用不同的文件名和不同的类名。