当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:17:00  来源:本站整理

捕捉全部违例[Java编程]

赞助商链接



  本文“捕捉全部违例[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
我们可成立一个掌握器,令其捕捉全部范例的违例.具体的做法是捕捉底子类违例范例Exception(也存在其他范例的底子违例,但Exception是实用于几近全部编程活动的底子).以下所示:
catch(Exception e) {
System.out.println("caught an exception");
}
这段代码能捕捉任何违例,所以在实际利用时最好将其置于掌握器列表的末尾,避免跟随在背面的任何特别违例掌握器失效.
关于程序员常用的全部违例类来说,由于Exception类是它们的底子,所以我们不会得到关于违例太多的信息,但可调用来自它的底子类Throwable的办法:

String getMessage()
得到具体的消息.

String toString()
返回对Throwable的一段扼要阐明,此中包含具体的消息(假若有的话).

void printStackTrace()
void printStackTrace(PrintStream)
打印出Throwable和Throwable的调用仓库途径.调用仓库显示出将我们带到违例发生地址的办法调用的次序.
第一个版本会打印出尺度错误,第二个则打印出我们的挑选流程.若在Windows下工作,就不能重定向尺度错误.因此,我们普通乐意利用第二个版本,并将后果送给System.out;这样一来,输出便可重定向到我们但愿的任何途径.
除此以外,我们还可从Throwable的底子类Object(全部对象的底子范例)得到别的一些办法.关于违例掌握来说,此中一个大概有效的是getClass(),它的作用是返回一个对象,用它代表这个对象的类.我们可顺次用getName()或toString()查询这个Class类的名字.亦可对Class对象举行一些复杂的操作,固然那些操作在违例掌握中是不必要的.本章稍后还会具体报告Class对象.
下面是一个特别的例子,它展示了Exception办法的利用(若履行该程序碰到艰难,请参考第3章3.1.2小节“赋值”):
//: ExceptionMethods.java
// Demonstrating the Exception Methods
package c09;

public class ExceptionMethods {
  public static void main(String[] args) {
    try {
      throw new Exception("Here's my Exception");
    } catch(Exception e) {
      System.out.println("Caught Exception");
      System.out.println(
        "e.getMessage(): " + e.getMessage());
      System.out.println(
        "e.toString(): " + e.toString());
      System.out.println("e.printStackTrace():");
      e.printStackTrace();
    }
  }
} ///:~

该程序输出以下:
Caught Exception
e.getMessage(): Here's my Exception
e.toString(): java.lang.Exception: Here's my Exception
e.printStackTrace():
java.lang.Exception: Here's my Exception
        at ExceptionMethods.main

可以看到,该办法持续供应了大量信息——每类信息都是前一类信息的一个子集.
  以上是“捕捉全部违例[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • 捕捉全部违例
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .