Java 异常Exception e中e的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()只是获取了异常的详细消息字符串。



注意一点:catch是处理异常,如果没有catch就代表没有被处理过,,如果异常是检测时异常,那么必须申明。

你可能感兴趣的:(java)