對Throwable的處理

Java以嚴謹著稱,對於checked異常,
1. 在出現異常的地方使用catch捕捉並忽略它
2. 直接拋出異常
對於第一種方法,有的時候很危險,異常有的時候必須被上層知道,如果有部分執行不正確,程序是需要停止的。第二種方法,會很麻煩,這樣一層層調用,每層都要寫異常相關的代碼,會多很多的代碼。
可以定義一個這樣的方法對異常和錯誤進行處理:

    public static void  launderThrowable(Throwable t){
        if(t instanceof RuntimeException)
            throw  (RuntimeException)t;
        else if(t instanceof Error)
            throw (Error)t;
        else throw new RuntimeException(t);
    }

這樣上層可以選擇忽略對Throwalbe的相關捕捉,在程序運行不正確時,又可以停止程序運行。

<script type="text/javascript"> $(function () { $('pre.prettyprint code').each(function () { var lines = $(this).text().split('\n').length; var $numbering = $('<ul/>').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($('<li/>').text(i)); }; $numbering.fadeIn(1700); }); }); </script>
發佈了44 篇原創文章 · 獲贊 37 · 訪問量 22萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章