catch里面的e.printStackTrace(); 到底有什么用 為什么要這樣寫 真不明白!
? ? public int test() {
? ? int divider=10;
? ? ? ? int result=100;
? ? ?try {
? ? while(divider>-1) {?
? ? divider--;
? ? result=result+100/divider;
? ? }
? ? return result;
? ? ?}catch(Exception e) {
? ? e.printStackTrace(); ?
? ? ? ?System.out.println("循環拋出異常了!??!");
? ? ? ? ? ? return -1;
? ? ?}
? ?
? ? ? }
2017-10-17
catch(Exception e){ e.printStackTrace() ; } 當try語句中出現異常是時,會執行catch中的語句,java運行時系統會自動將catch括號中的Exception e 初始化,也就是實例化Exception類型的對象。e是此對象引用名稱。然后e(引用)會自動調用Exception類中指定的方法,也就出現了e.printStackTrace() ;。 printStackTrace()方法的意思是:在命令行打印異常信息在程序中出錯的位置及原因。(這是白話解釋,比較容易理解)
2018-05-22
大V俺的沙發不懂
2017-10-17
將此 throwable 及其追蹤輸出至標準錯誤流。此方法將此 Throwable 對象的堆棧跟蹤輸出至錯誤輸出流,作為字段 System.err 的值。輸出的第一行包含此對象的 toString() 方法的結果。剩余行表示以前由方法 fillInStackTrace() 記錄的數據。此信息的格式取決于實現,但以下示例是最常見的: java.lang.NullPointerException
? ? ? ? at MyClass.mash(MyClass.java:9)
? ? ? ? at MyClass.crunch(MyClass.java:6)
? ? ? ? at MyClass.main(MyClass.java:3)