欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解Java類庫的概念以及import的使用方法

 更新時間:2015年09月25日 15:27:10   投稿:goldensun  
這篇文章主要介紹了詳解Java類庫的概念以及import的使用方法,是Java入門學(xué)習(xí)中的基礎(chǔ)知識,需要的朋友可以參考下

Java類庫及其組織結(jié)構(gòu)(Java API)

Java 官方為開發(fā)者提供了很多功能強大的類,這些類被分別放在各個包中,隨JDK一起發(fā)布,稱為Java類庫或Java API。

API(Application Programming Interface, 應(yīng)用程序編程接口)是一個通用概念。

例如我編寫了一個類,可以獲取計算機的各種硬件信息,它很強大很穩(wěn)定,如果你的項目也需要這樣一個功能,那么你就無需再自己編寫代碼,將我的類拿來直接用就可以。但是,我的類代碼很復(fù)雜,讓你讀完這些代碼不太現(xiàn)實,而且我也不希望你看到我的代碼(你也沒必要也不希望讀懂這些晦澀的代碼),我要保護我的版權(quán),怎么辦呢?

我可以先將我的類編譯,并附帶一個文檔,告訴你我的類怎么使用,有哪些方法和屬性,你只需要按照文檔的說明來調(diào)用就完全沒問題,既節(jié)省了你閱讀代碼的時間,也保護了我的版權(quán)。例如,獲取CPU信息的方法:

  getCpuInfo(int cpuType);


這就是一個API。也就是說,該文檔中描述的類的使用方法,就叫做API。

我也可以開發(fā)一個軟件,用來清理計算機中的垃圾文件,我比較有公益心,希望讓更多的開發(fā)人員使用我的軟件,我就會在發(fā)布軟件的同時附帶一個說明文檔,告訴你怎樣在自己的程序中調(diào)用,這也叫做API。

Java API也有一個說明文檔,入口地址:http://www.oracle.com/technetwork/java/api

選擇對應(yīng)版本的Java,點擊鏈接進入即可。J2SE 1.7 的API地址為:http://docs.oracle.com/javase/7/docs/api/

這個文檔是在線的,官方會隨時更新。當然你也可以下載到本地,請大家自己百度怎么下載。

打開J2SE 1.7 的API文檔,如下圖所示:

Java類庫中有很多包:
以 java.* 開頭的是Java的核心包,所有程序都會使用這些包中的類;
以 javax.* 開頭的是擴展包,x 是 extension 的意思,也就是擴展。雖然 javax.* 是對 java.* 的優(yōu)化和擴展,但是由于 javax.* 使用的越來越多,很多程序都依賴于 javax.*,所以 javax.* 也是核心的一部分了,也隨JDK一起發(fā)布。
以 org.* 開頭的是各個機構(gòu)或組織發(fā)布的包,因為這些組織很有影響力,它們的代碼質(zhì)量很高,所以也將它們開發(fā)的部分常用的類隨JDK一起發(fā)布。

在包的命名方面,為了防止重名,有一個慣例:大家都以自己域名的倒寫形式作為開頭來為自己開發(fā)的包命名,例如百度發(fā)布的包會以 com.baidu.* 開頭,w3c組織發(fā)布的包會以 org.w3c.* 開頭,微學(xué)苑發(fā)布的包會以 net.weixueyuan.* 開頭……

組織機構(gòu)的域名后綴一般為 org,公司的域名后綴一般為 com,可以認為 org.* 開頭的包為非盈利組織機構(gòu)發(fā)布的包,它們一般是開源的,可以免費使用在自己的產(chǎn)品中,不用考慮侵權(quán)問題,而以 com.* 開頭的包往往由盈利性的公司發(fā)布,可能會有版權(quán)問題,使用時要注意。

java中常用的幾個包介紹:

更多的包和說明請參考API文檔。

Java import以及Java類的搜索路徑
如果你希望使用Java包中的類,就必須先使用import語句導(dǎo)入。

import語句與C語言中的 #include 有些類似,語法為:

  import package1[.package2…].classname;


package 為包名,classname 為類名。例如:

import java.util.Date; // 導(dǎo)入 java.util 包下的 Date 類
import java.util.Scanner; // 導(dǎo)入 java.util 包下的 Scanner 類
import javax.swing.*; // 導(dǎo)入 javax.swing 包下的所有類,* 表示所有類


注意:
import 只能導(dǎo)入包所包含的類,而不能導(dǎo)入包。
為方便起見,我們一般不導(dǎo)入單獨的類,而是導(dǎo)入包下所有的類,例如 import java.util.*;。

Java 編譯器默認為所有的 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 編譯器默認已經(jīng)為我們導(dǎo)入了,否則程序會執(zhí)行失敗。
Java類的搜索路徑

Java程序運行時要導(dǎo)入相應(yīng)的類,也就是加載 .class 文件的過程。

假設(shè)有如下的 import 語句:

import p1.Test;


該語句表明要導(dǎo)入 p1 包中的 Test 類。

安裝JDK時,我們已經(jīng)設(shè)置了環(huán)境變量 CLASSPATH 來指明類庫的路徑,它的值為 .;%JAVA_HOME%\lib,而 JAVA_HOME 又為 D:\Program Files\jdk1.7.0_71,所以 CLASSPATH 等價于 .;D:\Program Files\jdk1.7.0_71\lib。

Java 運行環(huán)境將依次到下面的路徑尋找并載入字節(jié)碼文件 Test.class:
.p1\Test.class("."表示當前路徑)

D:\Program Files\jdk1.7.0_71\lib\p1\Test.class

如果在第一個路徑下找到了所需的類文件,則停止搜索,否則繼續(xù)搜索后面的路徑,如果在所有的路徑下都未能找到所需的類文件,則編譯或運行出錯。

你可以在CLASSPATH變量中增加搜索路徑,例如 .;%JAVA_HOME%\lib;C:\javalib,那么你就可以將類文件放在 C:\javalib 目錄下,Java運行環(huán)境一樣會找到。

相關(guān)文章

  • 從0到1學(xué)SpringCloud之SpringCloud?gateway網(wǎng)關(guān)路由配置示例詳解

    從0到1學(xué)SpringCloud之SpringCloud?gateway網(wǎng)關(guān)路由配置示例詳解

    Spring?Cloud?Gateway的目標提供統(tǒng)一的路由方式且基于Filter?鏈的方式提供了網(wǎng)關(guān)基本的功能,?例如:安全、監(jiān)控、指標和限流?,這篇文章主要介紹了從0到1學(xué)SpringCloud之SpringCloud?gateway網(wǎng)關(guān)路由配置示例詳解,需要的朋友可以參考下
    2023-04-04
  • IDEA導(dǎo)入JDBC驅(qū)動的jar包步驟詳解

    IDEA導(dǎo)入JDBC驅(qū)動的jar包步驟詳解

    JDBC是一種底層的API,是連接數(shù)據(jù)庫和Java應(yīng)用程序的紐帶,因此我們在訪問數(shù)據(jù)庫時需要在業(yè)務(wù)邏輯層中嵌入SQL語句,這篇文章主要介紹了IDEA導(dǎo)入JDBC驅(qū)動的jar包,需要的朋友可以參考下
    2023-07-07
  • JAVA反射機制實例教程

    JAVA反射機制實例教程

    這篇文章主要介紹了JAVA反射機制,包括了Java反射機制的各種應(yīng)用技巧,非常具有實用價值,需要的朋友可以參考下
    2014-09-09
  • Netty中序列化的作用及自定義協(xié)議詳解

    Netty中序列化的作用及自定義協(xié)議詳解

    這篇文章主要介紹了Netty中序列化的作用及自定義協(xié)議詳解,Netty自身就支持很多種協(xié)議比如Http、Websocket等等,但如果用來作為自己的RPC框架通常會自定義協(xié)議,所以這也是本文的重點,需要的朋友可以參考下
    2023-12-12
  • SpringMVC上傳圖片與訪問

    SpringMVC上傳圖片與訪問

    這篇文章主要介紹了SpringMVC上傳圖片與訪問的相關(guān)資料,需要的朋友可以參考下
    2016-01-01
  • Spring Cloud OpenFeign REST服務(wù)客戶端原理及用法解析

    Spring Cloud OpenFeign REST服務(wù)客戶端原理及用法解析

    這篇文章主要介紹了Spring Cloud OpenFeign REST服務(wù)客戶端原理及用法解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-10-10
  • 了解JAVA并發(fā)工具常用設(shè)計套路

    了解JAVA并發(fā)工具常用設(shè)計套路

    這篇文章主要介紹了了解JAVA并發(fā)工具常用設(shè)計套路,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,,需要的朋友可以參考下
    2019-06-06
  • java學(xué)習(xí)之猜數(shù)字小游戲

    java學(xué)習(xí)之猜數(shù)字小游戲

    這篇文章主要為大家詳細介紹了java學(xué)習(xí)之猜數(shù)字小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-07-07
  • RabbitMQ交換機與Springboot整合的簡單實現(xiàn)

    RabbitMQ交換機與Springboot整合的簡單實現(xiàn)

    這篇文章主要介紹了RabbitMQ交換機與Springboot整合的簡單實現(xiàn),本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-07-07
  • Springboot訪問html頁面的教程詳解

    Springboot訪問html頁面的教程詳解

    這篇文章主要介紹了Springboot訪問html頁面的教程,本文圖文并茂給大家介紹的非常詳細,需要的朋友可以參考下
    2018-03-03

最新評論