1. 程式人生 > >Java語言包Lang API(java.lang):概覽

Java語言包Lang API(java.lang):概覽

提供對Java程式語言設計基礎的類。 最重要的類是Object,它是類層次結構的根,Class的例項在執行時代表類。

通常需要將原始型別的值表示為物件。 包裝類布林值,字元,整數,長,浮點和雙倍用於此目的。 例如,Double型別的物件包含一個型別為double的欄位,表示該值,使得該引用可以儲存在引用型別的變數中。 這些類還提供了一些用於在原始值之間進行轉換的方法,以及支援像equals和hashCode這樣的標準方法。 Void類是一個不可例項化的類,它儲存對錶示型別為void的Class物件的引用。

類Math提供常用的數學函式,如正弦,餘弦和平方根。 類String,StringBuffer和StringBuilder類似地提供了對字串的常用操作。

ClassLoader,Process,ProcessBuilder,Runtime,SecurityManager和System提供了管理類的動態載入,建立外部程序,主機環境查詢(如時間和執行安全策略)的“系統操作”。

Throwable類包含可能被throw語句丟擲的物件。 Throwable的子類代表錯誤和異常。

字元編碼

java.nio.charset.Charset類的規範描述了字元編碼的命名約定以及Java平臺的每個實現必須支援的一組標準編碼。

註釋

註釋@Deprecated的程式元素是程式設計師不鼓勵使用的程式元素,通常是因為它是危險的,或者因為存在更好的選擇。

用於指示介面型別宣告旨在作為Java語言規範定義的功能介面的資訊性註釋型別。

表示方法宣告旨在覆蓋超型別中的方法宣告。

程式設計師斷言註釋方法或建構函式的正文不會對其varargs引數執行潛在的不安全操作。

表示在註釋元素(以及註釋元素中包含的所有程式元素)中應該抑制命名的編譯器警告。

介面

可以附加字元序列和值的物件。

可以儲存資源的物件(如檔案或套接字控制代碼),直到它關閉。

CharSequence是一個可讀的char值序列。

一個類實現了Cloneable介面來指示clone()方法,該方法對於該類的例項進行欄位的欄位複製是合法的。

該介面對實現它的每個類的物件強加一個整體排序。


實現此介面允許物件成為“for-each loop”語句的目標。

可讀是一個字元的來源。

Runnable介面應該由其例項旨在由執行緒執行的任何類來實現。

當執行緒由於未捕獲的異常突然終止而呼叫處理程式的介面。

布林類將一個物件中的基本型別boolean的值包裝起來。

Byte

位元組類在物件中包裝一個原始型別位元組的值。

Character類包裝一個物件中的基元型別char的值。

該類的例項表示Unicode字符集的特定子集。

一系列字元子集,表示Unicode規範中的字元塊。

Class<T>

類Class的例項表示正在執行的Java應用程式中的類和介面。

類載入器是負責載入類的物件。

在Android上沒什麼

Double類包裝一個物件中的基元型別double的值。

Enum<E extends Enum<E>>

這是所有Java語言列舉型別的公共基類。

Float

Float類在物件中包含一個基本型別float的值。

該類擴充套件了ThreadLocal以提供從父執行緒到子執行緒的值的繼承:當子執行緒被建立時,子接收到父值具有值的所有可繼承的執行緒區域性變數的初始值。

Integer類在物件中包裝一個基本型別int的值。

Long

Long類在物件中包含一個long型別的原始型別的值。

Math

類Math包含執行基本數字運算的方法,如基本指數,對數,平方根和三角函式。

抽象類Number是表示可轉換為基本型別byte,double,float,int,long和short的數值的平臺類的超類。

Class Object是類層次結構的根。

包物件包含有關Java包的實現和規範的版本資訊。

start()和Runtime.exec方法建立一個本機程序,並返回一個可以用於控制程序並獲取有關它的資訊的Process子類的例項。

此類用於建立作業系統程序。

表示子程序輸入的源或子程序輸出的目的地。

每個Java應用程式都有一個Runtime類的例項,允許應用程式與執行應用程式的環境進行介面。

舊版安全碼; 不使用。

舊版安全碼; 不使用。

Short

Short類在物件中包含基本型別short的值。

由getStackTrace()返回的堆疊跟蹤中的一個元素。

類StrictMath包含執行基本數字運算的方法,如基本指數,對數,平方根和三角函式。

String類表示字串。

執行緒安全,可變的字元序列。

一個可變的字元序列。

System類包含幾個有用的類欄位和方法。

執行緒是程式中執行的執行緒。

執行緒組代表一組執行緒。

此類提供執行緒區域性變數。

Throwable類是Java語言中所有錯誤和異常的超類。

Void

Void類是一個不可抗拒的佔位符類,用於儲存對錶示Java關鍵字void的Class物件的引用。

巨集

一組字元子集,表示Unicode標準附件24:指令碼名稱中定義的字元指令碼。

ProcessBuilder.Redirect的型別。

執行緒狀態。

異常

當出現異常算術條件時丟擲。

丟擲以表示已使用非法索引訪問陣列。

被丟擲以表示嘗試將錯誤型別的物件儲存到物件陣列中。

丟擲以表示程式碼嘗試將物件轉換為不屬於例項的子類。

當應用程式嘗試通過其字串名稱載入到類中時丟擲:

類Class中的forName方法。

丟擲以表示類Object中的克隆方法已被呼叫以克隆物件,但該物件的類不實現Cloneable介面。

當應用程式嘗試按名稱訪問列舉常量時丟擲,列舉型別不包含指定名稱的常量。

類Exception及其子類是Throwable的一種形式,表示合理應用程式可能想要捕獲的條件。

當應用程式嘗試反射建立例項(陣列除外),設定或獲取欄位或呼叫方法時,會丟擲IllegalAccessException,但是當前執行的方法無法訪問指定類,欄位的定義, 方法或建構函式。

被丟擲來表示一種方法已經通過了非法或不正確的引數。

丟擲以表明執行緒已嘗試在物件的監視器上等待,或通知其他執行緒等待物件的監視器,而不擁有指定的監視器。

表示在非法或不適當的時間呼叫了一種方法。

丟擲以指示執行緒不處於所請求操作的適當狀態。

丟擲以表示某種索引(例如陣列,字串或向量)的索引超出範圍。

當應用程式嘗試使用類Class中的newInstance方法嘗試建立類的例項時丟擲,但是指定的類物件不能被例項化。

線上程等待,睡眠或以其他方式佔用之前丟擲,執行緒在活動之前或活動期間中斷。

丟擲一個應用程式嘗試建立一個負數大小的陣列。

表示該類沒有指定名稱的欄位。

當無法找到特定方法時丟擲。

當應用程式嘗試在需要物件的情況下使用null時丟擲。

丟擲以表示應用程式已嘗試將字串轉換為其中一個數字型別,但該字串不具有相應的格式。

反射操作在核心反射中丟擲的常見超類異常。

RuntimeException是在Java虛擬機器的正常操作期間可以丟擲的異常的超類。

被安全經理丟擲,表示安全違規。

通過String方法丟擲,以指示索引為負或大於字串的大小。

當應用程式嘗試使用表示型別名稱的字串訪問型別時丟擲,但沒有找到具有指定名稱的型別的定義。

丟擲以表示不支援請求的操作。

錯誤

當應用程式嘗試呼叫抽象方法時丟擲。

丟擲表示斷言失敗。

丟擲以表示invokedynamic指令未能找到其引導方法,或引導方法無法為具有正確方法型別的目標提供呼叫站點。

當Java虛擬機器檢測到正在載入的類的超類層次結構中的迴圈性時丟擲。

當Java虛擬機器嘗試讀取類檔案並確定檔案格式不正確或不能解釋為類檔案時丟擲。

Error

一個錯誤是Throwable的一個子類,表明一個合理的應用程式不應該嘗試捕獲的嚴重問題。

表示在靜態初始化程式中發生意外異常。

如果應用程式嘗試訪問或修改某個欄位,或呼叫無法訪問的方法,則丟擲此異常。

當一些類定義發生不相容的類更改時丟擲。

當應用程式嘗試使用Java新構造來例項化抽象類或介面時丟擲。

丟擲,表示在Java虛擬機器中發生了一些意外的內部錯誤。

LinkageError的子類表示一個類對另一個類有一些依賴; 然而,後期課程在前班的彙編之後已經不相容。

如果Java虛擬機器或ClassLoader例項嘗試在類的定義中載入(作為普通方法呼叫的一部分或作為使用新表示式建立新例項的一部分),並且不會找到該類的定義。

如果應用程式嘗試訪問或修改物件的指定欄位,並且該物件不再具有該欄位,則丟擲。

如果一個應用程式嘗試呼叫一個類(靜態或例項)的指定方法,並且該類不再具有該方法的定義,則丟擲此異常。

當Java虛擬機器由於記憶體不足而無法分配物件時丟擲,並且垃圾回收器不再有可用的記憶體。

當堆疊溢位發生時丟擲,因為應用程式的深度過深。

當呼叫(不建議使用的)stop()方法時,ThreadDeath的一個例項被丟擲在受害者執行緒中。

當Java虛擬機器中發生一個未知但嚴重的異常時丟擲。

如果Java虛擬機器找不到宣告為native的方法的適當的本地語言定義,則丟擲。

當Java虛擬機器嘗試讀取類檔案並確定檔案中的主要和次要版本號不受支援時丟擲。

當“驗證者”檢測到一個類檔案,儘管形成良好時,會丟擲一些內部不一致或安全問題。

丟擲以表明Java虛擬機器已損壞或已耗盡資源以使其繼續執行。