考慮下面的代碼,其中HelloWorld
類有違約或包私有訪問:.java文件中的包私有類 - 爲什麼可以訪問?
class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World!"); // Display the string.
}
}
,並假設上面的代碼保存在一個名爲HelloWorld.java
文件。所以我的問題是:因爲HelloWorld
現在是一個包私人類,它是如何工作的?方法main()
不應該是可見或跨包可訪問的,我是對的嗎?
這讓我感覺良好,如果該類HelloWorld
聲明爲public。混淆只有在用默認的包私有訪問聲明時纔會出現。
[Java編譯沒有公共類的.java文件]的可能重複(http://stackoverflow.com/questions/7633631/java-compilation-of-a-java-file-without-a-public-類) – Qwerky