zoukankan      html  css  js  c++  java
  • e.printStackTrace();

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

    关于System.out.println(e)与e.printStackTrace()

    在抛出异常的情况下,有很多方法,System.out.println(e);这个方法打印出异常,并且输出在哪里出现的异常;e.printStackTrace()也是打印出异常,但是它还将显示出更深的调用信息。比如说:

    A extends ---> B extends---> C

    当在创建A的过程中出现问题了,我们抛出异常。<

    System.out.println(e),除了标准异常外,只打印at A 然后再向外层层输出。

    e.printStackTrace(),除了标准异常外,打印

     at C

     at B

     at A

     .......再向外层调查。

    在向外层调查的情况下,都一样。最后都会回到com.sun.midp.main.Main.main

     

    System.out.println();当发生异常时显示你自己设定的字符串信息;就比如下面的代码,try里面进行IO操作,你知道要抛出异常肯定也是IO异常,catch里面就写上特定的IOException,自己打印就行了

    try{
    //function
    }
    catch(IOException exc){
        System.out.println("IOException");
    }
    e.printStackTrace();是打印异常的堆栈信息,指明错误原因,其实当发生异常时,通常要处理异常,这是编程的好习惯,所以e.printStackTrace()可以方便你调试程序!

  • 相关阅读:
    递归
    数据结构与算法-复杂度分析
    'latin-1' codec can't encode characters in position解决字符问题
    redis理解
    spring 嵌套事务问题
    Parameterized testing with any Python test framework
    分布式事务测试考虑点
    python orm / 表与model相互转换
    Python多线程、多进程
    JS运动
  • 原文地址:https://www.cnblogs.com/022414ls/p/11610487.html
Copyright © 2011-2022 走看看