文章目錄
- 一、獲取例外物件的兩個重要方法
- 1、getMessage
- 2、printStackTrace()
- 3、兩個方法的實體
- 二、查看例外的追蹤資訊
一、獲取例外物件的兩個重要方法
1、getMessage
獲取例外簡單的描述資訊,
語法格式:String msg = exception.getMessage();
2、printStackTrace()
列印例外追蹤的堆疊資訊,比較適合于程式的除錯階段
語法格式:exception.printStackTrace();
3、兩個方法的實體
public class ExceptionText3 {
public static void main(String[] args) {
//這里只是為了測驗getMessage()方法和printStackTrace()方法
//這里只是new了例外物件,但是沒有將例外物件拋出,JVM會認為這是一個普通的java物件,
NullPointerException e = new NullPointerException("空指標例外Exception ");
//獲取例外簡單描述資訊:這個資訊實際上就是構造方法上面String引數
String msg = e.getMessage();//空指標例外Exception
System.out.println(msg);
//列印例外堆疊資訊
//java后臺列印例外堆疊追蹤資訊的時候,采用了異步執行緒的方式列印的,
e.printStackTrace();
System.out.println("Hello World!");
}
}

二、查看例外的追蹤資訊
我們應該怎么看,可以快速的除錯程式呢?
例外資訊追蹤資訊,從上往下一行一行看,
但是需要注意的是:SUN寫的代碼就不用看了,主要問題是出現在自己撰寫的代碼上,
即從運行結果中的at ExceptionText3.m3(ExceptionText3.java:27)這一行看
import java.io.FileInputStream;
import java.io.FileNotFoundException;
public class ExceptionText3 {
public static void main(String[] args) {
try {
m1();
} catch (FileNotFoundException e) {
//列印例外堆疊追蹤資訊
//在實際開發中建議使用這個,養成好習慣
e.printStackTrace();
}
//這里程式不耽誤執行,很健壯
System.out.println("Hello World!");
}
private static void m1() throws FileNotFoundException {
m2();
}
private static void m2() throws FileNotFoundException {
m3();
}
private static void m3() throws FileNotFoundException {
new FileInputStream("C:\\Users\\Administrator\\Desktop\\學習a.txt");
}
}

因為27行出現了問題導致23行
23行出問題導致19行
19行出問題導致7行
應該先查看27行的的代碼,27行是錯誤的根源,從根上看問題
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/264825.html
標籤:java
上一篇:列印六芒星
下一篇:詳解java集合框架
