`

e.printStackTrace()

 
阅读更多
public void printStackTrace()将此 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)
本示例通过运行以下程序生成:
class MyClass {
     public static void main(String[] args) {
         crunch(null);
     }
     static void crunch(int[] a) {
         mash(a);
     }
     static void mash(int[] b) {
         System.out.println(b[0]);
     }
}




还有就是,
catch(Exception e){ e.printStackTrace() ; } 当try语句中出现异常是时,会执行catch中的语句,java运行时系统会自动将catch括号中的Exception e 初始化,也就是实例化Exception类型的对象。e是此对象引用名称。然后e(引用)会自动调用Exception类中指定的方法,也就出现了e.printStackTrace() ;。 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()可以方便你调试程序!
分享到:
评论

相关推荐

    java图形界面美化包 nimrodlf-1.0b

    e.printStackTrace(); } catch (InstantiationException e) { // TODO 自动生成的 catch 块 e.printStackTrace(); } catch (IllegalAccessException e) { // TODO 自动生成的 catch 块 e.printStackTrace(); ...

    java数据库封装类

    e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } return conn; } public static PreparedStatement prepare(Connection conn, String sql) { PreparedStatement ...

    epub java实现(附带源程序、jar包和epub电子书)

    e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } //设置epub文件内title. //本处修改了toc.ncx文件中的和content.opf中的标签内容. List&lt;String&gt; titlesList = new ...

    excel的jdbc驱动

    e.printStackTrace(); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); } catch (InstantiationException e) { e.printStackTrace()...

    jsp图书管理系统,一个很好的jsp图书管理系统网站,sql2000数据库

    e.printStackTrace(); System.out.println("加载数据库驱动失败!"); } } /* 创建数据库连接 */ public void createCon() { try { con = DriverManager.getConnection(url, userName, password)...

    wololock.github.io:e.printstacktrace.blog源代码-git source code

    e.printstacktrace.blog 该存储库包含我的博客的源代码 使用Docker运行本地博客 您可以通过以下命令使用Docker容器启动Hexo服务器: $ ./hexo.sh server --config _config.yml,_config.local.yml 它将检查...

    jdbc练习的一个工具类

    e.printStackTrace(); throw new ExceptionInInitializerError("属性文件加载错误"); } finally { try { is.close(); } catch (Exception e) { } } url = infos.getProperty(URL); } ...

    mybatis generator Java类方法生成

    e.printStackTrace(); } catch (XMLParserException e) { e.printStackTrace(); } DefaultShellCallback callback = new DefaultShellCallback(overwrite); MyBatisGenerator myBatisGenerator = null; try {...

    DruidJDBCUtils.java

    e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } } /** * 获取数据库连接对象 */ public static Connection getConnection() throws SQLException { return ds.get...

    TCP并发上传——java源码

    import java.io.*; import java.net.InetAddress;... e.printStackTrace(); } catch (UnknownHostException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }

    跨平台的word(doc,docx,rtf)插入图片功能

    e.printStackTrace(); } catch (InvalidFilePostfixException e){ e.printStackTrace(); } 2、向docx插入图片 InsertImageFactory iif=new InsertImageFactory(); try { InsertImage ii=iif....

    java数据库连接代码

    e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } ``` #### 二、SQL Server 7.0/2000数据库 连接SQL Server数据库,可以使用Microsoft提供的JDBC驱动。下面是具体的连接代码: ```java...

    java源代码公司管理系统

    e.printStackTrace(); return null; } finally { } } private static int executeUpdate(String sql) { try { if(conn==null) new Dao(); return conn.createStatement().executeUpdate...

    jedis调用redis源码Demo

    e.printStackTrace(); } } public void setTest() { try { for (int i = 0; i ; i++) { jedis.set("key" + i, "value" + i); } } catch (Exception e) { e.printStackTrace(); ...

    使用jsp进行 树状展示1源代码

    e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } return conn; } public static void closeConn(Connection conn){ try { if(conn != null){ conn.close(); ...

    JDBC连接数据库

    e.printStackTrace();}finally{try {if(sta!=null){sta.close();sta=null;}if(con!=null){con.close();con=null;}} catch (SQLException e) {e.printStackTrace();}}}public ResultSet query(String sql){Connection...

    sanselan-0.97

    个人使用场景:识别图片是否cmyk,我的另外一个资源是把图片从rgb转成cmyk public boolean ... e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return back; }

    java网络编程示例

    e.printStackTrace(); } } } Client import java.io.DataOutputStream; import java.io.IOException; import java.io.OutputStream; import java.net.Socket; import java.net.UnknownHostException; ...

    传智播客ibatis视频教程源代码

    e.printStackTrace(); } } public void addStudent(Student student) { try { sqlMapClient.insert("insertStudent",student); } catch (SQLException e) { // TODO Auto-generated catch block e....

    java连接数据库实例

    e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } ``` #### 2. DB2 数据库连接 IBM DB2是IBM公司的一款关系型数据库管理系统,支持多种操作系统环境。以下为连接DB2的示例代码: ```...

Global site tag (gtag.js) - Google Analytics