好的,所以一個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