簡體   English   中英

java包只有一個公共類嗎?

[英]Should a java package have only one public class?

我厭倦了創建一個包含一個公共類的包和一個包含多個公共類的包,然后通過另一個包導入它們,這兩次都是程序運行的。 我理解差異,在第一個我只能使用一個公共類的方法,但該類可以在其包中使用其他類,當更多類是公共的時,我可以通過外包直接訪問所有這些類。

現在當我們導入java.util.Scanner時,我們導入java.util.ArrayList不是這個相同的包嗎? 當我們用一個公共類導入我們的包時,它只顯示一個公共類。 這意味着java.util有多個公共類,或者?

那個java也是什么呢。 是的,它是否區分我的包和Java庫包?

是的,一個包可以有多個public類。

為每個public類創建一個新包將非常麻煩,根本不提供任何概述。

java. 只是JDK / JRE附帶的標准庫。

軟件包就像系統中的文件夾一樣。 您可以在文件夾中放置多個文件而不會出現問題。

通常,包的結構使它們組合相關的類以使開發人員更容易。 如果您想要根本沒有包,或者您想為每個類創建一個新包:它沒關系。 你將成為自己最大的敵人,但肯定是可能的。

import java.util.ArrayList;

意思是:讓我通過輸入ArrayList而不是java.util.ArrayListjava.util的類ArrayList

java.util是包的名稱,沒有別的。 這是Java開發人員選擇存儲ArrayList類的地方。 它與任何其他包名稱沒有什么不同,除非您不允許將java包用於您自己的類,因為它是為標准Java類保留的。

import java.util.*;

意思是:讓我使用包java.utilArrayListLinkedListCollection等)的所有類,通過鍵入它們的簡單名稱( ArrayListLinkedListCollection等)而不是它們的完全限定名( java.util.ArrayListjava.util.LinkedListjava.util.Collection等)

所有這些類都是公開的(如javadoc中所述)。 如果它們不公開,您將無法在自己的課程中使用它們。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM