2
爲什麼即使文件名不同,爲什麼javac編譯具有默認修飾符的類,以及訪問修飾符爲public,private或protected時爲什麼不能訪問? 例如:文件名:文件 類Foo {}即使文件名不同,javac也會使用默認訪問修飾符編譯類
它被編譯沒有錯誤,如果我添加的公共,私人或受保護的盈類的它是沒有得到編譯任何一個可以解釋爲什麼它如此
測試 內容爲什麼即使文件名不同,爲什麼javac編譯具有默認修飾符的類,以及訪問修飾符爲public,private或protected時爲什麼不能訪問? 例如:文件名:文件 類Foo {}即使文件名不同,javac也會使用默認訪問修飾符編譯類
它被編譯沒有錯誤,如果我添加的公共,私人或受保護的盈類的它是沒有得到編譯任何一個可以解釋爲什麼它如此
測試 內容有兩個規則
public
那麼文件名應該是同一類型可以是class
或interface
private
或protected
外部類。爲什麼第一點的答案是java規範的定義方式。 你不能將外部類聲明爲私有類,因爲它根本不會服務於任何目的。
是否有什麼理由爲什麼java的創建者在默認修飾符類的情況下給出了一個異常? –
因爲類必須在包中可見。 '默認'訪問級別意味着它們在該包中可見 –
我在問他們爲什麼在文件名的情況下給出帶有默認修飾符的類的例外 –