Java異常中getMessage()與toString的區別


Exception e中e的getMessage()和toString()方法的區別

示例代碼1

public class TestInfo {
    private static String str =null;
    public static void main(String[] args) {
        System.out.println("test exception");
        try {
            if(str.equals("name")){
                System.out.println("test exception");
            }
        } catch (Exception e) {
            System.out.println(e.toString());
            System.out.println(e.getMessage());
        }
    }
}

輸出結果:
java.lang.NullPointerException
null
示例代碼2:

public class TestInfo {
    private static int m = 0;
    public static void main(String[] args) {
        System.out.println("test exception");
        try {
            m = 899/0;
        } catch (Exception e) {
            System.out.println(e.toString());
            System.out.println(e.getMessage());
        }
    }
}

輸出結果:

java.lang.ArithmeticException: / by zero
/ by zero
總結:

e.toString(): 獲得異常種類和錯誤信息

e.getMessage():獲得錯誤信息

e.printStackTrace():在控制台打印出異常種類,錯誤信息和出錯位置等
---------------------
原文鏈接:https://blog.csdn.net/opera95/article/details/74885827


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM