編寫java的時候,我們需要遵守java編程代碼規(guī)范,不然就會出現(xiàn)java運行錯誤的情況,導致java無法正常運行,那Java的package一定要寫嗎?接下來我們就來給大家講解一下這方面的內(nèi)容。
Java的package一定要寫,盡管放到正確的包路徑中,沒有pakage聲明的文件中的類在編譯過程中會被放到默認包(未命名)中,無法被引用。
Java的package有什么用?
包的 3 個作用如下:
1. 區(qū)分相同名稱的類。
2. 能夠較好地管理大量的類。
3. 控制訪問范圍。
包定義
Java 中使用 package 語句定義包,package 語句應該放在源文件的第一行,在每個源文件中只能有一個包定義語句,并且 package 語句適用于所有類型(類、接口、枚舉和注釋)的文件。定義包語法格式如下:
package 包名;
Java 包的命名規(guī)則如下:
包名全部由小寫字母(多個單詞也全部小寫)。
如果包名包含多個層次,每個層次用“.”分割。
包名一般由倒置的域名開頭,比如 com.baidu,不要有 www。
自定義包不能 java 開頭。
注意:如果在源文件中沒有定義包,那么類、接口、枚舉和注釋類型文件將會被放進一個無名的包中,也稱為默認包。在實際企業(yè)開發(fā)中,通常不會把類定義在默認包下。
包導入
如果使用不同包中的其它類,需要使用該類的全名(包名+類名)。代碼如下:
example.Test test = new example.Test();
其中,example 是包名,Test 是包中的類名,test 是類的對象。
為了簡化編程,Java 引入了 import 關鍵字,import 可以向某個 Java 文件中導入指定包層次下的某個類或全部類。import 語句位于 package 語句之后,類定義之前。一個 Java 源文件只能包含一個 package 語句,但可以包含多個 import 語句。
使用 import 導入單個類的語法格式如下:
import 包名+類名;
上面語句用于直接導入指定類,例如導入前面的 example.Test 類,代碼如下:
import example.Test;
使用 import 語句導入指定包下全部類的用法按如下:
import example.*;
上面 import 語句中的星號(*)只能代表類,不能代表包,表明導入 example 包下的所有類。
提示:使用星號(*)可能會增加編譯時間,特別是引入多個大包時,所以明確的導入你想要用到的類是一個好方法,需要注意的是使用星號對運行時間和類的大小沒有影響。
通過使用 import 語句可以簡化編程,但 import 語句并不是必需的,如果在類里使用其它類的全名,可以不使用 import 語句。
Java 默認為所有源文件導入 java.lang 包下的所有類,因此前面在 Java 程序中使用 String、System 類時都無須使用 import 語句來導入這些類。但對于前面介紹數(shù)組時提到的 Arrays 類,其位于 java.util 包下,則必須使用 import 語句來導入該類。
在一些極端的情況下,import 語句也幫不了我們,此時只能在源文件中使用類全名。例如,需要在程序中使用 java.sql 包下的類,也需要使用 java.util 包下的類,則可以使用如下兩行 import 語句:
import java.util.*; import java.sql.*;
如果接下來在程序中需要使用 Date 類,則會引起如下編譯錯誤:
Test.java:25:對Date的引用不明確, java.sql中的類java.sql.Date和java.util中的類java.util.Date都匹配
上面錯誤提示:在 Test.java 文件的第 25 行使用了 Date 類,而 import 語句導入的 java.sql 和 java.util 包下都包含了 Date 類,系統(tǒng)不知道使用哪個包下的 Date 類。在這種情況下,如果需要指定包下的 Date 類,則只能使用該類的全名,代碼如下:
// 為了讓引用更加明確,即使使用了 import 語句,也還是需要使用類的全名
java.sql.Date d = new java.sql.Date();
系統(tǒng)包
Java SE 提供了一些系統(tǒng)包,其中包含了 Java 開發(fā)中常用的基礎類。在 Java 語言中,開發(fā)人員可以自定義包,也可以使用系統(tǒng)包,常用的系統(tǒng)包如表所示。
Java的package還是很重要的,有了它能夠解決類的命名沖突、類文件管理等問題。并且還可以在包內(nèi)定義類,而在包外的代碼不能訪問該類。最后大家如果想要了解更多初識java知識,敬請關注賦能網(wǎng)。
本文鏈接:
本文章“Java的package一定要寫嗎?Java的package有什么用?”已幫助 58 人
免責聲明:本信息由用戶發(fā)布,本站不承擔本信息引起的任何交易及知識產(chǎn)權(quán)侵權(quán)的法律責任!
本文由賦能網(wǎng) 整理發(fā)布。了解更多培訓機構(gòu)》培訓課程》學習資訊》課程優(yōu)惠》課程開班》學校地址等機構(gòu)信息,可以留下您的聯(lián)系方式,讓課程老師跟你詳細解答:
咨詢熱線:4008-569-579