一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

JAVA基本類庫介紹

 精髓_感知力 2016-03-13
我們曾經(jīng)講過,Java已經(jīng)為編程者編制了許多類,這些類已經(jīng)經(jīng)過測試,基本上不存在錯誤,這些類都是我們編程的基礎。如果不利用這些已存在的類,我們的編程工作將變得異常復雜,所以我們應盡可能多的掌握Java基本類庫的內(nèi)容。這一章和下一章將向讀者介紹Java基本類庫的結構和一些常用類以及如何參考Java技術文檔,讓讀者能進一步提高自己

 

學習重點

● 包的概念

● java.lang中的幾個基本類

● 如何查閱Java技術文檔

● 常用工具類

                                             第八章    JAVA基本類庫介紹

 

        8.1 包的概念

 

    包是由.class文件組成的一個集合,.class文件時可以用Java解釋其解釋執(zhí)行的文件,它也是由Java源的文件,即.Java文件經(jīng)編譯而生成的。Java是一種面向對象的語言,它的特點就是重用,包就是組織和管理.class文件的一種工具,因此,它存在的目的就是幫助我們實現(xiàn)代碼的重用。包是一種松散的概念,一般情況下,功能相同或者相關的類組織在一個包中,例如java.io包中的類都與輸入、輸出有關,java.applet包中的類都與applet程序有關。

8.1.1 構建包

    一個包事實上就是一個文件夾,這個文件夾中存放著.class文件。包像目錄結構一樣可以由多層結構,而各層之間以“.”來分隔,如java.io,java.awt,java.awt.color等。由于Java的類經(jīng)常需要在互聯(lián)網(wǎng)上運行,所以有可能出現(xiàn)同名的類,程序就不知道使用哪一個類了。但如果把類都放在不同的包中,并且使包的名字獨一無二,就不會出現(xiàn)混亂狀況。

程序中定義包用package這個關鍵詞,它的格式如下:

package 包名:

例如:

package MyJavaProgram;

package cn.com.companyname.myname

這個語句必須放在一個源文件的第一句,并且語句前面無空格。包名一般全部用小寫。我們知道一個源文件可能有多個類,其中只有一個類是公共類,這些類經(jīng)編譯都會產(chǎn)生.class文件,上面的意思是,這個源文件中的類,經(jīng)編譯產(chǎn)生的.class文件屬于一個包,名為MyJavaProgram。這就定義了MyJavaProgram包。一般把要打包的源文件放到包中,然后再包中對源文件進行編譯,就把.class文件放入包中了。當然javac編譯器還有幾個參數(shù),可以實現(xiàn)確定源文件來源和.class文件放置等功能,可以實現(xiàn)源文件和.class文件不在同一個目錄。下面是各種參數(shù)及其解釋。

-g 生成所有debug信息

-g:none 不生成任何debug信息

-g:{lines,vars,source} 只生成部分debug信息

-O 優(yōu)化

-nowarn 不生成警告

-verbose 輸出編譯器的工作記錄

-deprecation 輸出所有過期API的位置

-classpath<path> 聲明查找用戶類庫的路徑

-sourcepath<path> 聲明查找源文件的路徑

-bootclasspath<path> 覆蓋引導類文件路徑

-extdirs<dirs> 覆蓋安裝擴展路徑

-d<directory> 聲明將生成的.class文件放在何處

-enconding<encoding> 聲明源文件的編碼方式

-traget<release> 未指定版本的虛擬機生成類文件

8.1.2 包的引用

  用import語句就可以引入所需的公共類,如:

import java.io.*;

   這個語句表示java.io中所有的公共類被引入當前包。系統(tǒng)先根據(jù)classpath只是的路徑,然后按照包名找到所需的類,如classpath為c:\package\mypakage,而包名為cn.com.companyname.myname,系統(tǒng)則按照以下路徑去尋找所需的類:c:\package\mypackage\cn\com\companyname\myname,也就是把環(huán)境變量和包名相連,形成路徑,然后在這個路徑下尋找類。對于Java類庫,由于安裝時已經(jīng)自動注冊了路徑,所以不需要添加classpath,而使用自己定義的包中的類就必須更改classpath。

還有一種方法使用某個包中的類,就是在程序中寫全它的包名,但很麻煩,而不使用import語句,如:

java.io.FileInputStream in = new java.io.FileInputStream();

如果我們使用了一個包中的大多數(shù)類,可是使用通配符的方式引用包,否則,最好把需要類一一列出來,這樣可以節(jié)省大量系統(tǒng)資源。

                             8.2 Java語言類庫的結構

     Java 2平臺類庫1.3.1版共為程序員提供了76個包,每個包都分別負責不同的功能,除了java.lang之外,其它包的內(nèi)容只要經(jīng)過import語句引用,就可以在程序中使用。所有這些類的介紹和使用方法,Java都提供了極其完善的技術文檔,這種機制在極大程度上釋放了程序員,讓他們何以把更多的時間放在對象的設計上,而不是語法和一些局部算法上。

為了方便讀者自己使用Java文檔,我們先把Java提供的這些包介紹一下,讀者可以根據(jù)自己的需要來查閱。其中,包名后面帶”.*”的表示其中包括一系列相關的包。

表8.1 Java提供的包

包名 內(nèi)容介紹

java.applet 提供了創(chuàng)建applet需要的類,包括幫助applet訪問其內(nèi)容的通訊類

java.awt.* 提供了創(chuàng)建用戶界面以及繪制、管理圖形、圖像的類

java.beans.* 提供開發(fā)Java Beans需要的類

java.io 提供了通過數(shù)據(jù)流、對象序列以及文件系統(tǒng)實現(xiàn)的系統(tǒng)輸入、輸出

java.lang.* Java編程語言的基本類庫

java.math 提供了簡明的整數(shù)算術以及十進制算數(shù)的基本函數(shù)

java.net 提供了用于實現(xiàn)網(wǎng)絡通訊應用的所有類

java.rmi.* 提供了與遠程方法調(diào)用相關的所有類

java.security.* 提供了設計網(wǎng)絡安全方案需要的類

java.sql 提供了訪問和處理來自于Java標準數(shù)據(jù)源數(shù)據(jù)的類

java.text 提供了一些類和接口用于處理文本、日期、數(shù)字以及語法獨立于自然語言之外格式的消息

java.util.* 包括集合類、事件處理模式、日期時間工具等各類常用工具包

javax.accessibility 定義了用戶界面組件之間相互訪問的一種機制

javax.naming.* 未命名服務提供了一系列類和接口

javax.rmi.* 為用戶提供了遠程方法調(diào)用的應用程序接口

javax.sound.* 提供了MIDI輸入、輸出以及合成需要的類和接口

javax.swing.* 提供了一系列輕量級的用戶界面組件,是目前Java用戶界面常用的包

                   8.3 java.lang包中的常用類介紹

    這個包是Java語言最基本的包,沒有這個包中的類,我們的編程很難,它們是編程最基本內(nèi)容。這個包中的所有類都有系統(tǒng)自動引入,所以程序不用import語句就可以使用其中的任何一個類。這個包有4個部分:接口、類、例外和錯誤。

8.3.1 Object類

    Object類是Java程序中所有類的直接或間接父類,也是類庫中所有類的父類,任何一個類都是由Object類派生出來的,它是繼承樹上的根節(jié)點。所以它含有的屬性和方法將被所有的類繼承,下面就是Object類的方法,也是所有類都含有的方法:

● protected Object clone()throws CloneNotSupportedException

生成當前對象的一個復制,并返回這個復制的對象,該對象類型為Object,但所有需要使用該方法的類都必須實現(xiàn)接口cloneable,否則,運行時將拋出CloneNotSupportedException類的例外。

● public final Class getClass()

返回一個當前對象在運行期的Class類對象。

● public int hashCode()

返回一個hash code value,不同的對象有不同的hash code value.

● public Boolean equals(Object obj)

如果當前對象與形參對象相同則返回true,否則返回false。

● public String toString()

返回一個反映這個對象信息的字符串,通常使對象所屬類。

● public final void notify()

這是關于多線程的方法,這個方法用來喚醒等待對向監(jiān)視器的多個線程中的一個

● public final void notifyAll()

這個方法是喚醒所有等待監(jiān)視器的線程

● public final void wait(long timeout)throws InterrupedException

這個方法是讓當前線程放棄對這個對象的同步的聲明,即放棄對這個對象的鎖定,進入等待行列,直到由notify()或notifyAll()方法喚醒,或形參中規(guī)定的時間到期,timeout的單位是毫秒。

● public final void wait(long timeout,int nanos)throws InterrupedException

這個方法比上一個多了一個形參,第二個形參的意思是nanoseconds(十億分之一秒),這個方法的等待時間變?yōu)閮蓚€形參所指示的時間的和,時間控制更精確。

● public final void wait()throws InterrupException

這個方法的含義同wait(0)

● protected void finalize()throws Throwable

這個方法用來把對象從內(nèi)存中清除,由圾收集器自動調(diào)用,編程者可以重載這個方法,在對象被清除時,顯示某些信息。

8.3.2 Class類

   Class類是非常特殊的,它的對象將伴隨每個類。當一個類X被編譯后,就有一個特殊的對象(Class對象)產(chǎn)生,它隱藏在X.class文件中,Class對象是由編譯系統(tǒng)自動生成的。

為了讀者進一步理解類是在何時載入內(nèi)存的,先來看一個例子:

例8.1 類的載入時機

SweetShop.java的源文件如下:

class Candy{

static{

System.out.println("Loading Candy");

}

}

classGum{

static{

System.out.println("Loading Gum");

}

}

class Cookie{

static{

System.out.println("Loading Cookie");

}

}

public class SweetShop{

public static void main(String[] args){

System.out.println("inside main");

new Candy();

System.out.println("After creating Candy");

try{

Class.forName("Gum");

}catch(ClassNotFoundException e){

e.printStackTrace();

}

System.out.println("After Class.forName(\"Gum\")");

new Cookie();

System.out.println("After creating Cookie");

}

}

這個程序首先定義了3個類,每個類只有一個靜態(tài)初始化器,由于靜態(tài)初始化器是在類載入內(nèi)存時就被執(zhí)行,所以可用它來指示類何時被載入內(nèi)存的。然后在每個對象創(chuàng)建之前輸入一定的提示語,,這樣我們就很清楚的看到每個類何時加載內(nèi)存的了。程序中Class.forName(“Gum”);依據(jù)的進一步解釋看下面的部分。程序輸出如下:

inside main

Loading Candy

After creating Candy

Loading Gum

After Class.forName(“Gum”)

Loading Cookie

After creating Cookie

從以上的結果可以看出,類的加載是在對象創(chuàng)建的時候。

這個特殊的Class對象含有所屬類的所有信息,可以通過Class類的方法提取這些信息,下面我們就介紹Class類的一些方法。

● public static Class forName(String className)throws ClassNotFoundException

這個方法是靜態(tài)方法,所以用Class直接調(diào)用,格式可以參考上面的例題。這個方法的形參是一個類名,方法的返回值是形參指示的類的Class對象。這個方法的結果是產(chǎn)生一個形參所表示的類的Class對象。如:

class t=Class.forName(“java.lang.Thread”)

● public String getName()

該方法返回Class對象代表的實體(類、接口、數(shù)組、基本數(shù)據(jù)類型等)的名字。例如,(new Object()).getClass().getName()的值是java.lang.Object,當然可以放到println()語句中輸出。其中的getClass()用來得到當前對象的Class對象,同一個類的對象有相同的Class對象。

GetName()返回的字符串中以不同的字母及符號表示該實體的信息,“[”表示數(shù)組,有幾個“[”表示幾維數(shù)組,以下的字母代表不同的數(shù)據(jù)類型,“L”表示類或接口。

再看幾個例子:

(new Object[3]).getClass.getName()的值為“[Ljava.lang.Object”,它表示當前Class對象對應著一個一維數(shù)組,數(shù)組元素是java.lang.Object類的對象。

(new int[3][4][5][6][7][8][9]).getClass().getName()的值為“[[[[[[[I”,它表示當前Class對象對應著一個七維數(shù)組,數(shù)組元素是int類簡單變量。

● public Class getSuperclass()

這個方法不同于Object類的方法getClass(),它返回的是一個數(shù)組,這些數(shù)組成員是Class對象,這些對象是當前類中的成員為公共或接口所對應的Class類的實例。

● public ClassLoader getClassLoader()

ClassLoader是一個抽象類,在java.lang包中。任何一個類加載內(nèi)存,都是通過一個對象來實現(xiàn)的,這個對象就是它衍生類的實例,因為類的定義都是一字節(jié)碼文件形式存在,加載一個類就是讀取這些字節(jié)碼。

● public Class getComponentType()

返回數(shù)組成員的類型,如果當前對象不是數(shù)組,返回null。

● public int getModifiers()

返回類或接口的修飾語,例如public,protected,private,final,static和abstract等,但它們用一個int數(shù)表示,例如:public為0x0001,final為0x0010,abstract為0x0400,這些數(shù)字以十六進制表示,是Java虛擬機用來鑒別修飾語用的

● public Class getDeclaringClass()

如果當前對象是另一個類的成員,則返回那個類的Class對象,否則為空。

8.3.3 Math類

Math類是一個最終類,類頭定義是:public final class Math extends Object。它包含了常用的科學計算方法。這些方法都是靜態(tài)方法,可以通過類名直接調(diào)用。下面我們列出其中常用的屬性和方法的定義:

● public static final double E

● public static final double PI

三角函數(shù):

● public static double sin(double a)

● public static double cos(double a)

● public static double tan(double a)

● public static double asin(double a)

● public static double acos(double a)

● public static double atan(double a)

弧度、角度轉換如下:

● public static double toRadians(double angdeg)

● public static double toDegrees(double angrad)

代數(shù)函數(shù):

● public static double exp(double a)

● public static double log(double a)

● public static double sqrt(double a)

● public static double ceil(double a)

● public static double floor(double a)

● public static double random()

以下3個方法都有其他數(shù)據(jù)類型的重載方法:

● public static int abs(int a)

● public static int max(int a,int b)

● public static int min(int a,int b)

8.3.4 String與StringBuffer類

    Java提供了兩個用于字符串操作的類,一個是經(jīng)常用到的String,另一個是StringBuffer。字符串類提供了豐富的字符串操作方法,程序員可以方便的使用這些常用的算法和操作,而不需要自己再重復編寫,這就是面向對象的好處。

1. 為什么要使用兩個類

String類用與處理那些值不會發(fā)生改變的字符串,以前程序中的String變量,全都是其取值沒有發(fā)生過變化的字符串。而StringBuffer類則用于那些可能發(fā)生變化的字符串的處理。例如,在程序中拼接字符串、從文件中讀取字符串等等。由于String類對象都是常量,它的處理效率要比StringBuffer類對象高得多,因此,讀者在編程時盡可能使用String類。

下面我們來看一個簡單的例子,它同時使用了String和StringBukffer,

例8.2 用兩種不同的字符串類來逆轉字符串

StringDemo.java測源程序如下:

public class StringDemo{

public static void main(String[] args){

String palindrome="Dot saw I was Tod";

int len=palindrome.length();

StringBuffer dest=new StringBuffer(len);

for(int i=(len-1);i>=0;i--){

dest.append(palindrome.charAt(i));

}

System.out.println(dest.toString());

}

}

在這個程序中,我們先創(chuàng)建了一個String類對象,并將字符串“Dot saw I was Tod”賦值給它,然后創(chuàng)建了一個和它一樣長的StringBuffer類對象。利用它來進行逆轉處理。這個程序的執(zhí)行結果很有趣,實際上和輸入字符串幾乎是一樣的(除了第一個字母的大寫問題),即:

doT sw I was toD

2. 對象的創(chuàng)建

    一般情況下,創(chuàng)建一個String都是采用直接給一個String對象賦值的方法,其值用雙引號括起來,如:

String palindrome=”Dot saw I was Tod”;

當然,也可以象創(chuàng)建其它對象那樣,新建一個String對象出來,Java為String提供了幾種比較常用的構造期。如,使用字符數(shù)組或者StringBuffer等,下面是一個使用字符數(shù)組創(chuàng)建String對象的例子:

char[] helloArray={‘h’,’e’,’,’l’,’l’,’o’};

String helloString=new String(helloArray);

System.out.println(hellostring);

3. String的常用方法

String的常用方法如下:

● public int length()

返回字符串長度

● public char charAt(int index)

返回index位置的字符,index從0到length()-1

● public void getChars(int srcBegin,int srcEnd,char[] dst,int dstBegin)

這個方法是把字符串中的字符復制到一個字符數(shù)組中

● public Boolean equals(Object anObject)

這是對Object類中同方法的重載

● public int compareTo(String anotherString)

這是實現(xiàn)Serializable接口中的方法,如果實際字符串比形參字符串以字典排序時靠前,返回負數(shù),相反時為正數(shù)。

● public Boolean startsWith(String prefix)

● public Boolean endsWith(String suffix)

上面兩個方法分別判斷字符串是否以形參字符開始或結束。

● public int indexOf(int ch)

該方法返回字符串中第一個出現(xiàn)形參所指示的字符的位置,如果沒有該字符,返回-1。

● public int indexOf(int ch,fromIndex)

從fromIndex開始查找,返回第一個是ch字符的位置,或者返回-1。

● public int lastIndexOf(int ch)

返回字符串中最后一個ch字符的位置或-1。

● public String Substring(int beginIndex)

返回從當前字符串中的beginIndex開始形成的新字符串。

● public String substring(int beginIndex,int endIndex)

返回從當前字符串截取的新字符串,beginIndex是開始位,endIndex是結束位減1。

● public string concat(String str)

把形參字符串連接到當前字符串后,字符串的加法運算就是這個方法。

● public String replace(char oldChar,char newChar)

把字符串中所有相同的某個字符換成另一個。

4. StringBuffer的常用方法

   由于StringBuffer類是可變字符串,所有它的操作主要集中在對字符串的更改上,因此先介紹它的append()和insert()方法,這兩個方法都有多個重載方法,以實現(xiàn)不同的操作。

● public StringBuffer append(String str)

從方法名就可以知道這是一個擴充字符串的方法,它的功能是把形參字符串加到當前字符串之后,形成一個新的可變字符串。例如:

StringBuffer new StringBuffer();

s.append(“start”);

s.append(“l(fā)e”);

以上幾個語句的結果是得到一個含有“startle”的可變字符串。

● public StringBuffer insert(int offset,String str)

這個方法是在當前字符串中插入形參字符串,形成一個新的可變字符串。其中形參offset是偏移量,它指示在何處插入,0<=offset<=length().

下面介紹該類的其它一些常用方法:

● public StringBuffer delete(int start,int end)

刪除start(含)到end(不含)之間的字符。

● public StringBuffer deleteCharAt(int index)

刪除指定位置的字符。

● public StringBuffer replace(int start,int end,String str)

從start(含)到end(不含)之間的字符串以str代替。

● public void setCharAt(int index,char ch)

改變指定位置的字符

● public StringBuffer reverse()

使字符串逆轉

● public int length()

返回字符個數(shù)

● public int capacity()

返回容量,通常會大于等于length()

● public void setLength(int newlength)

改變字符個數(shù),如果newLength大于原個數(shù),則新添的字符都為空(“”)。相反,字符串中最好幾個字符將被刪除。形參newLength不能為負數(shù)。

● public String substring(int start,int end)

提取子字符串,返回的是String類對象。

● public String toString()

把可變字符串中內(nèi)容變成String類對象。事實上在用println打印可變字符串內(nèi)容時,就自動調(diào)用了該方法。

在String類和StringBuffer類中,有一點值得注意,許多方法中用到的形參是用來指示字符串中的位置,假設這個形參為int index,那么,字符串的第一個字符的index值為0,第二個字符為1,依此類推。

8.3.5 System類

    系統(tǒng)類是一個獨特的類,它是一個final類,所有的方法都是用類變量調(diào)用的,換句話說,沒有人可以實例話一個System類。System類主要提供了標準輸入、輸出以及一些系統(tǒng)環(huán)境信息。

1. 標準輸入、輸出

● public static final InputStream in——標準輸入

這個屬性是InputSream類的一個對象,關于InputStream類和下面的PrintStream類我們在java.io包中一并介紹,這些類都是關于輸入、輸出方面的,他們都有各自的屬性和方法,我們用過的read()就是InputStream類的方法,println()和print()就是PrintStream類的方法。

● public static final PrintStream out——標準輸出

● public static final PrintStream err——標準錯誤輸出

這些輸入、輸出屬性可以根據(jù)其所使用的參數(shù)來自動的轉換輸出格式,下面的例子利用標準輸出打印了幾種常見數(shù)據(jù)類型的數(shù)據(jù),它們使用的是println方法,但系統(tǒng)可以根據(jù)不同類型以不同的方式打印這些數(shù)據(jù)的值。

例8.3 用標準輸出打印各種類型的對象

DataTypePrintTest.java的源程序如下:

public class DataTypePrintTest{

public static void main(String[] args){

Thread objectData=new Thread();

String stringData="Java Mania";

char[] charArrayData={'a','b','c'};

int integerData=4;

long longData=Long.MIN_VALUE;

float floatDAta=Float.MAX_VALUE;

double doubleData=Math.PI;

boolean booleanData=true;

System.out.println(objectData);

System.out.println(stringData);

System.out.println(charArrayData);

System.out.println(integerData);

System.out.println(longData);

System.out.println(floatData);

System.out.println(doubleData);

System.out.println(booleanData);

}

}

其輸出結果為:

Thread[Thread-0,5,main]

Java Mania

abc

4

-9223372036854775808

3.4028235E38

3.141592653589793

true

我們注意到,打印一個String類型變量,系統(tǒng)的動作就是打印出它的內(nèi)容,而打印一個Thread型變量,則系統(tǒng)打印它的格式為:

類名[名稱,優(yōu)先級,組]

2.系統(tǒng)環(huán)境信息

System類提供了一個方法用來返回系統(tǒng)環(huán)境信息:

Public static Properties getProperties(argument);

Java虛擬機維護了一系列系統(tǒng)環(huán)境信息,它們都是以“鍵名/值”對的形式出現(xiàn)的,一旦Java虛擬機啟動之后,系統(tǒng)就自動將這些變量初始化,其中包含了與運行環(huán)境相關的很多信息。

另外,System類提供的與系統(tǒng)環(huán)境信息相關的方法還有:

● public static String setProperty(String key,String value);

設置系統(tǒng)變量的值,key為鍵名,value為鍵值。

● public static Properties getPorperties();

返回所有的系統(tǒng)環(huán)境環(huán)境。

下面看一個例子,假設有一文本文件,叫myProperties.txt,其中只有一行:

subliminal.message=Buy Java Now!

我們利用這個文件來設置變量,它的名字叫做subliminal,其取值就是文本文件中存貯的內(nèi)容。

3.其它有用方法

System類有許多方法,用這些方法可以管理Java虛擬機的運行和獲得虛擬機的運行信息,下面是該類的幾個方法,它們可以反映System類的一些功能。

● public static long currentimeMillis()

返回系統(tǒng)時間,單位毫秒。

● public static void exit(int status)

在用戶的程序還未執(zhí)行完之前,強制關閉Java虛擬機,并把狀態(tài)信息status傳遞給操作系統(tǒng),status非零時,表示非正常退出

● public static void ge()

運行垃圾收集器

以上的內(nèi)容可以讓我們對System類的內(nèi)容有一定的了解,這個類中的屬性和方法都與系統(tǒng)有關,而且這個類的許多方法借用了其它類的方法。

8.3.6 數(shù)據(jù)類型類

每一類簡單數(shù)據(jù)類型都對應著一個數(shù)據(jù)類型類,例如,int對應著Integer類,double對應著Double類,這些類能把一個簡單數(shù)據(jù)封裝成一個類。某些場合必須使用這種數(shù)據(jù)類型類,如后面的集合類,它的成員必須是類,而不能是簡單的變量。而且使用這些類能完成簡單變量不能完成的工作,如將一個數(shù)字字符串轉化成一個整數(shù)等。下面我們就以Integer類來說明這些類的某些方法。

●MAX_VALUE和MIN_VALUE規(guī)定了int類型量的最大值和最小值。

●構造函數(shù):public Integer(int value)和public Integer(String s)分別把數(shù)字和數(shù)字字符串封裝成Integer類。

● 下面幾個方法是把當前數(shù)據(jù)類型類的對象所對應的int量轉化成某種基本數(shù)據(jù)類型值:

public int intValue()

public long longValue()

public double doubleValue()

● 下面是數(shù)字字符串和數(shù)字之間的轉換:

public String toString()

public static int parseInt(String s)

● public static static Integer valueOf(String s)方法把s轉化成Integer類對象。

                   8.4 關于Java的技術文檔

     上面的內(nèi)容是我們對包中的內(nèi)容有了一定的了解,這一節(jié)研究JavaDOC中的類庫。

在下載完j2sdk-1_3_1-doc后,找到它下面的docs文件夾,打開index文件(HTML文件),找到API&Language Documentation下的Java2 Platfrom API Specificaion,然后選擇需要的那個包,進而查看類、接口等內(nèi)容。或者直接進入docs文件夾下的api文件夾,打開index(HTML文件),也可以進入選擇包的界面。

選擇一個包后,可以看到包的名稱以及簡單描述,然后是包中的內(nèi)容,分為interface summary,class summary,exception summary和error summary等,如果想看包中各類的繼承結構,可以選擇最上面的菜單中的tree,就可以了解包中的總體結構。當選擇一個類進入后,可以看到如下的內(nèi)容(Double類的說明):

java.lang //包名

Class.Double //類名

Java.lang.Object //繼承結構:java.lang包中的Double類的直接父類

| //是java.lang中的Number類

+--java.lang.Number //Number類的父類是java.lang中的Object類

|

+--java.lang.Double

All Implemented Interfaces: //這個類實現(xiàn)的接口

Comparable,Serializable

然后就是屬性、方法、構造函數(shù)的概述表(summary),最后是屬性、方法、構造函數(shù)的詳細說明。

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    日韩国产亚洲欧美激情| 精品丝袜一区二区三区性色| 日本人妻精品中文字幕不卡乱码| 少妇丰满a一区二区三区| 99热在线精品视频观看| 中文字幕久久精品亚洲乱码| 大香蕉大香蕉手机在线视频| 精品人妻一区二区三区在线看 | 国产精品久久久久久久久久久痴汉| 欧美日韩在线视频一区| 在线日韩中文字幕一区| 日韩国产亚洲一区二区三区| 亚洲美女国产精品久久| 亚洲欧洲精品一区二区三区| 亚洲一区二区三区国产| 国产偷拍精品在线视频| 亚洲中文字幕在线视频频道| 色婷婷日本视频在线观看| 超碰在线播放国产精品| 好吊日成人免费视频公开| 人妻少妇久久中文字幕久久| 国产福利在线播放麻豆| 欧洲日韩精品一区二区三区| 亚洲第一区欧美日韩在线| 国产精品香蕉在线的人| 欧美一区二区三区播放| 欧美日韩免费黄片观看| 免费观看日韩一级黄色大片| 丰满少妇被猛烈撞击在线视频| 欧美精品久久99九九| 色综合久久超碰色婷婷| 欧美不卡午夜中文字幕| 久久99精品日韩人妻| 少妇人妻一级片一区二区三区| 国产又粗又长又爽又猛的视频 | 久久国产精品熟女一区二区三区| 国产成人精品国产成人亚洲| 亚洲一区二区三区四区| 精品人妻一区二区三区免费| 日韩精品一区二区三区av在线| 国产乱人伦精品一区二区三区四区|