“嗨,阿米戈!今天我們來談談包裹。”
“計算機上的文件被分組到文件夾中。Java 中的類(每個類都存儲在一個單獨的文件中)被分組到包中,這些包對應於硬盤驅動器上的文件夾。所以,這裡沒有什麼新鮮事。有兩件事我'不過,我想指出。”
“首先,類的完整唯一名稱由其包名加上類名組成。以下是一些示例:”
完整的唯一名稱 | 包裹名字 | 班級名稱 |
---|---|---|
java.io.FileInputStream | java.io | 文件輸入流 |
java.lang.字符串 | java.lang | 細繩 |
java.util.ArrayList | java.util | 數組列表 |
org.apache.tomcat.Servlet | 組織.apache.tomcat | 小服務程序 |
貓 | 未指定 | 貓 |
“一個完整的類名總是唯一的。”
“如果我們每次都必須寫長名稱,即java.util.ArrayList ,那將是一件痛苦的事情。這就是 Java 允許您導入類的原因。您可以在代碼中使用其他類的短名稱,但在你的課程你必須明確指出你將使用哪些課程。”
“你是怎樣做的?”
“一行看起來像這樣:import java.util.ArrayList;
”
“在一個類的開頭,在聲明包之後,您可以在代碼中使用ArrayList時指出您指的是哪個類。”
“為什麼要使事情過於復雜?類可以有相同的名稱嗎?”
“是的。不同的包中可以有同名的類。我們不能導入兩個同名的類,所以我們必須調用其中一個的全名。”
“給你打個比方。你有一個同事叫吉姆。這沒問題:每個人都知道他是誰。但如果你的辦公室裡有三個吉姆,你就必須用他們唯一的全名來稱呼他們,以避免困惑。”
“其次,最好將類放入包中,而不是放在根 src 文件夾中。當類不多時,這不是問題,但當類很多時,很容易將它們混在一起。始終創建類包裹裡面。”
在 Java 中,通常的做法是給類和包起有意義的名字。許多公司發布他們的庫(類集)並以他們的公司或網站命名它們以避免混淆:“
包裹名字 | 公司/項目名稱 |
---|---|
組織。apache .common 組織。阿帕奇.tomcat 組織。阿帕奇.util |
阿帕奇 |
com。甲骨文.jdbc | 甲骨文 |
java .io java x.servlet |
太陽,爪哇 |
com。IBM.websphere | IBM、WebSphere |
com。老闆 | 老闆 |
GO TO FULL VERSION