姓名: 李小娜
[嵌牛導(dǎo)讀]:?這篇文章主要介紹了詳解Java類庫的概念以及import的使用方法,是Java入門學(xué)習(xí)中的基礎(chǔ)知識,需要的朋友可以參考下
[嵌牛鼻子] :Java類庫及其組織結(jié)構(gòu)(Java API) ? ?Java import以及Java類的搜索路徑 ??
[嵌牛提問] :如何導(dǎo)入包所含的類?
[嵌牛正文] :Java類庫及其組織結(jié)構(gòu)(Java API)
Java 官方為開發(fā)者提供了很多功能強(qiáng)大的類,這些類被分別放在各個包中泽示,隨JDK一起發(fā)布付鹿,稱為Java類庫或Java API。
API(Application Programming Interface, 應(yīng)用程序編程接口)是一個通用概念炎滞。
例如我編寫了一個類敢艰,可以獲取計算機(jī)的各種硬件信息,它很強(qiáng)大很穩(wěn)定册赛,如果你的項目也需要這樣一個功能钠导,那么你就無需再自己編寫代碼震嫉,將我的類拿來直接用就可以。但是牡属,我的類代碼很復(fù)雜票堵,讓你讀完這些代碼不太現(xiàn)實,而且我也不希望你看到我的代碼(你也沒必要也不希望讀懂這些晦澀的代碼)逮栅,我要保護(hù)我的版權(quán)悴势,怎么辦呢?
我可以先將我的類編譯证芭,并附帶一個文檔瞳浦,告訴你我的類怎么使用,有哪些方法和屬性废士,你只需要按照文檔的說明來調(diào)用就完全沒問題叫潦,既節(jié)省了你閱讀代碼的時間,也保護(hù)了我的版權(quán)官硝。
Java類庫中有很多包:
以 java.* 開頭的是Java的核心包矗蕊,所有程序都會使用這些包中的類;
以 javax.* 開頭的是擴(kuò)展包氢架,x 是 extension 的意思傻咖,也就是擴(kuò)展。雖然 javax.* 是對 java.* 的優(yōu)化和擴(kuò)展岖研,但是由于 javax.* 使用的越來越多卿操,很多程序都依賴于 javax.*,所以 javax.* 也是核心的一部分了孙援,也隨JDK一起發(fā)布害淤。
以 org.* 開頭的是各個機(jī)構(gòu)或組織發(fā)布的包,因為這些組織很有影響力拓售,它們的代碼質(zhì)量很高窥摄,所以也將它們開發(fā)的部分常用的類隨JDK一起發(fā)布。
在包的命名方面础淤,為了防止重名崭放,有一個慣例:大家都以自己域名的倒寫形式作為開頭來為自己開發(fā)的包命名,例如百度發(fā)布的包會以 com.baidu.*
開頭鸽凶,w3c組織發(fā)布的包會以 org.w3c.* 開頭币砂,微學(xué)苑發(fā)布的包會以 net.weixueyuan.* 開頭……
Java
import以及Java類的搜索路徑
如果你希望使用Java包中的類,就必須先使用import語句導(dǎo)入玻侥。
import語句與C語言中的 #include 有些類似决摧,語法為:
1importpackage1[.package2…].classname;
package 為包名,classname 為類名。
注意:
import 只能導(dǎo)入包所包含的類蜜徽,而不能導(dǎo)入包祝懂。
為方便起見,我們一般不導(dǎo)入單獨的類拘鞋,而是導(dǎo)入包下所有的類砚蓬,例如 import java.util.*;。
Java 編譯器默認(rèn)為所有的 Java 程序?qū)肓?JDK 的 java.lang 包中所有的類(import
java.lang.*;)盆色,其中定義了一些常用類灰蛙,如 System、String隔躲、Object摩梧、Math
等,因此我們可以直接使用這些類而不必顯式導(dǎo)入宣旱。但是使用其他類必須先導(dǎo)入仅父。
前面講到的”Hello World“程序使用了System.out.println(); 語句,System 類位于 java.lang 包浑吟,雖然我們沒有顯式導(dǎo)入這個包中的類笙纤,但是Java 編譯器默認(rèn)已經(jīng)為我們導(dǎo)入了,否則程序會執(zhí)行失敗组力。
Java類的搜索路徑
Java程序運行時要導(dǎo)入相應(yīng)的類省容,也就是加載 .class 文件的過程。