为了账号安全,请及时绑定邮箱和手机立即绑定

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;

     }

   

      }


正在回答

3 回答

catch(Exception e){ e.printStackTrace() ; } 当try语句中出现异常是时,会执行catch中的语句,java运行时系统会自动将catch括号中的Exception e 初始化,也就是实例化Exception类型的对象。e是此对象引用名称。然后e(引用)会自动调用Exception类中指定的方法,也就出现了e.printStackTrace() ;。 printStackTrace()方法的意思是:在命令行打印异常信息在程序中出错的位置及原因。(这是白话解释,比较容易理解)

0 回复 有任何疑惑可以回复我~
#1

PG_one 提问者

非常感谢!终于明白点了
2017-10-17 回复 有任何疑惑可以回复我~

大V俺的沙发不懂

0 回复 有任何疑惑可以回复我~

将此 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)

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

catch里面的e.printStackTrace(); 到底有什么用 为什么要这样写 真不明白!

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信