好的,所以一个java源文件必须至少有一个公共类,该文件应该被称为“class-name.java”。很公平。没有公共类的.java文件的Java编译
因此,如果我有一个类,那么下面就编译:
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World!"); // Display the string.
}
}
但我是什么错误,如果我从上面的代码中删除了“公共”访问修饰符,该代码仍然编译。我只是不明白。删除它,代码如下:
class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World!"); // Display the string.
}
}
在上面的代码,因为我删除了“公共”访问修饰符,我班有违约或包专用通道,即它不能从外界访问,只能从包装内购买。
所以我的问题是,上面的代码是如何编译的?在这种情况下,文件HelloWorld.java没有'public'HelloWorld类(只有包 - 私有HelloWorld.class),因此我的理解不应该编译。
感谢您回答我的问题!
问候, 匿名
*“java源文件必须至少有一个公共类”*呃不,不需要任何东西。(http://stackoverflow.com/q/7791487/1134080) – ADTC