1. 程式人生 > >Java 中的e和e.printStackTrace()方法

Java 中的e和e.printStackTrace()方法

e初始化,也就是例項化Exception型別的物件,e是此物件引用名稱。然後e(引用)會自動呼叫Exception類中指定的方法,也就出現了e.printStackTrace()。當然,我們也可以用System語句輸出,那麼這兩個語句有什麼區別呢?
1、兩個輸出語句都能輸出,System語句可以提示你異常發生的位置;但e.printStackTrace()可以顯示更深的呼叫關係。例如:程式中有繼承的關係,
Rose extends Flower ; Flower extends Plant;假如我們在建立 Rose
的時候發生異常,那麼System語句就會輸出異常 at Rose ,然後向外層輸出
但e.printStackTrace()輸出除了標準異常外,列印 at Plant at Flower at Rose
…….再向外層調查。 在向外層調查的情況下,都一樣


2、System.out.println();當發生異常時顯示你自己設定的字串資訊;e.printStackTrace();是列印異常的堆疊資訊,指明錯誤原因。
note:其實當發生異常時,通常要處理異常,這是程式設計的好習慣,所以e.printStackTrace()可以方便你除錯程式!