Java(五)-內部類和異常類
阿新 • • 發佈:2019-02-07
一、內部類(類中套類)
在一個類中定義另一個類成為內部類
包含內部類的類稱為內部類的外嵌類
內部類和外嵌類的關係:
- 內部類的外嵌類的成員變數和方法在內部類中有效
- 內部類不可以宣告類變數和類方法
- 內部類僅供它的外嵌類使用
注:
內部類對應的位元組碼檔案格式是“外嵌類名$內部類名”
內部類可以被修飾為static內部類,但不能操作外嵌類的例項成員變數
二、匿名類(建立物件)
是一個子類,不可以用來宣告物件,但是可以建立一個物件
特點:
- 可以繼承或者重寫父類的方法
- 匿名類一定是內部類
- 建立物件時,直接使用父類的構造方法
new name(){ 類體 };
//name可以是類名,也可以是介面名(必須重寫介面的全部方法)
三、異常類
使用throw關鍵字丟擲一個Exception子類的例項表示異常發生
允許方法呼叫過程中丟擲異常物件
異常物件可用如下方法得到異常資訊:
- public String getMessage();
- public void printStackTrace();
- public String toString();
1.使用try-catch語句處理異常
try{
……
}
catch(ExceptionSubClass e){
……
}
2.可自定義異常類
throws宣告要產生的異常
throw丟擲異常物件
public class SubExceptionName extends Exception{
//SubExceptionName是自定義異常類名稱
public SubExceptionName(xxxxx)//構造
}
throw new SubExceptionName(xxxxx);//使用
斷言
除錯程式碼,不用捕獲異常來處理
- 宣告斷言語句,有兩種格式:
assert booleanExpression;
//booleanExpression = false時結束執行
assert booleanExpression:message;//並輸出message
- 啟用斷言語句:
java -ea mainClass