我厭倦了創建一個包含一個公共類和一個包含多個公共類的包,然後通過另一個包導入它們,並且這兩個程序都可以工作。我瞭解其中的差異,首先我只能使用一個公共類的方法,但是該類可以在其包中使用其他類,並且當更多類是公共類時,我可以通過外來程序包直接訪問所有這些類。java包應該只有一個公共類嗎?
現在當我們導入java.util.Scanner,並且我們導入的java.util.ArrayList不是這個包嗎?當我們用一個公共類導入我們的包時,它只顯示一個公共。這意味着java.util有多個公共類,或?
那又是什麼java。意思是,它是否使我的包和java庫包有所不同?
當您爲Java創建源代碼文件時,通常稱其爲編譯單元(有時是翻譯單元)。每個編譯單元必須有一個以.java結尾的名稱,並且在編譯單元內可以有一個公共類,該類必須與該文件具有相同的名稱(包括大寫,但不包括.java文件擴展名)。每個編制單位只能有一個公開課;否則,編譯器會抱怨。 – STEFS
如果該編譯單元中有其他類,則它們在該包之外被隱藏,因爲它們不是公共類,它們構成主要公共類的「支持」類。 這是布魯斯埃克爾的形式。這是否意味着每個公共課程都將獲得自己的文件,但不是公共課程? – STEFS
@StefS:對於嵌套類(即在其他類中定義的類)來說,現在還太早。從學習基礎知識開始,現在考慮每個類必須在自己的文件中定義。只有當你熟悉這些基礎知識時,才能閱讀關於嵌套類的Java教程。 –