java在己有的类创子类怎么创_使用Java创建自己的异常子类
盡管Java的內置異常處理大多數常見錯誤,你也許希望建立你自己的異常類型來處理你所應用的特殊情況。這是非常簡單的:只要定義Exception的一個子類就可以了(Exception當然是Throwable的一個子類)。你的子類不需要實際執行什么——它們在類型系統中的存在允許你把它們當成異常使用。
Exception類自己沒有定義任何方法。當然,它繼承了Throwable提供的一些方法。因此,所有異常,包括你創建的,都可以獲得Throwable定義的方法。這些方法顯示在表10-3中。你還可以在你創建的異常類中覆蓋一個或多個這樣的方法。
表 10-3 Throwable 定義的方法
方法
描述
Throwable fillInStackTrace( )
返回一個包含完整堆棧軌跡的Throwable對象,該對象可能被再次引發。
String getLocalizedMessage( )
返回一個異常的局部描述
String getMessage( )
返回一個異常的描述
void printStackTrace( )
顯示堆棧軌跡
void printStackTrace(PrintStreamstream)
把堆棧軌跡送到指定的流
void printStackTrace(PrintWriterstream)
把堆棧軌跡送到指定的流
String toString( )
返回一個包含異常描述的String對象。當輸出一個Throwable對象時,該方法被println( )調用
下面的例子聲明了Exception的一個新子類,然后該子類當作方法中出錯情形的信號。它重載了toString( )方法,這樣可以用println( )顯示異常的描述。
// This program creates a custom exception type.
class MyException extends Exception {
private int detail;
MyException(int a) {
detail = a;
}
public String toString() {
return "MyException[" + detail + "]";
}
}
class ExceptionDemo {
static void compute(int a) throws MyException {
System.out.println("Called compute(" + a + ")");
if(a > 10)
throw new MyException(a);
System.out.println("Normal exit");
}
public static void main(String args[]) {
try {
compute(1);
compute(20);
}
該例題定義了Exception的一個子類MyException。該子類非常簡單:它只含有一個構造函數和一個重載的顯示異常值的toString( )方法。ExceptionDemo類定義了一個compute( )方法。該方法拋出一個MyException對象。當compute( )的整型
main( )方法為MyException設立了一個異常處理程序,然后用一個合法的值和不合法的值調用compute( )來顯示執行經過
本站部分文章源于互聯網,本著傳播知識、有益學習和研究的目的進行的轉載,為網友免費提供。如有著作權人或出版方提出異議,本站將立即刪除。如果您對文章轉載有任何疑問請告之我們,以便我們及時糾正。
PS:推薦一個微信公眾號: askHarries 或者qq群:474807195,里面會分享一些資深架構師錄制的視頻錄像:有Spring,MyBatis,Netty源碼分析,高并發、高性能、分布式、微服務架構的原理,JVM性能優化這些成為架構師必備的知識體系。還能領取免費的學習資源,目前受益良多
總結
以上是生活随笔為你收集整理的java在己有的类创子类怎么创_使用Java创建自己的异常子类的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 豆皮的家常做法大全?
- 下一篇: java file gettext_避免