zoukankan      html  css  js  c++  java
  • e.getMessage() e.printStackTrace() 和e.printStackTrace() 小结

    1 e.getMessage() ;    只会获得异常的名称。比如说NullPoint 空指针,就告诉你说是空指针

    2.e.toString():  获得异常种类和错误信息

    3.e.printStackTrace();    在控制台打印打印出详细的异常信息,异常名称。便于调试

    3 如果异常是用无参构造器构造后续又没有设置message的话一般就是null,如果用带String参数的构造器构造的话,返回的就是那个参数。

    下面是栗子1:

        public static String str =null;
        public static void main( String[] args )
        {
            try{
                if(str.equals("name")){}
            }catch (Exception e){
                System.out.println("e.toString()打印结果: "+ e.toString());
                System.out.println("e.getMessage()打印结果: "+ e.getMessage());
                System.out.println("============分割线=============");
                e.printStackTrace();
            }
        }

    执行结果:

    e.toString()打印结果: java.lang.NullPointerException
    e.getMessage()打印结果: null
    ============分割线=============

    java.lang.NullPointerException
    at test.App.main(App.java:13)

    下面是栗子2:

       public static int m = 0;
        public static void main( String[] args )
        {
            try{
                m = 899/0;
            }catch (Exception e){
                System.out.println("e.toString()打印结果: "+ e.toString());
                System.out.println("e.getMessage()打印结果: "+ e.getMessage());
                System.out.println("============分割线=============");
                e.printStackTrace();
            }
        }

    执行结果:
    e.toString()打印结果: java.lang.ArithmeticException: / by zero
    e.getMessage()打印结果: / by zero
    ============分割线=============
    java.lang.ArithmeticException: / by zero
    at test.App2.main(App2.java:13)

      

  • 相关阅读:
    Java中顺序、并行与并发
    Java设计模式之Iterator
    渗透基础流程思路丶技巧丶与总结
    阿里巴巴Java开发手册之并发处理注意事项
    Java中Thread方法启动线程
    IOCP之客户端及消息传递
    IOCP简单实现
    JAVA 递归线程池测试 ExecutorService / ForkJoinPool
    TCP与UDP的一些心得
    七.badboy检查点和参数化
  • 原文地址:https://www.cnblogs.com/unknows/p/9729586.html
Copyright © 2011-2022 走看看