首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

错误学习小结

2012-08-21 
异常学习小结异常学习小结:? 1.所有的异常都是由Throwable继承再来的,下一层分为Error和Exception。? 2.Err

异常学习小结

异常学习小结:

? 1.所有的异常都是由Throwable继承再来的,下一层分为Error和Exception。

? 2.Error描述了java运行时系统的内部错误和资源耗尽错误,如outofmemory

? 3.Exception 有两个分支,分为RuntimeException和IOException。

??? RuntimeException 一般包含ClassCastException、ArrayIndexOutOfBoundsException、NullPointException异常,和派生于Error类的异常并称为“未检查异常”,其它情况称为“已检查异常”。

? 4. 可自己创建异常类,只需要派生于Exception或者是其子类即可。

? 5.再次抛出异常与异常链

???? 可在catch内再次抛出异常

try {throw new Exception();} catch (Exception e) {Throwable se = new ServletException("出错了~~~");se.initCause(e);Throwable ee = se.getCause();//可以获得其原始异常,此例throw的就是Exception,所以原始异常也是这个System.out.println("ee=" + ee);throw se;}

?6.堆栈跟踪元素

public class ExceptionTest {public static void t1(){t2();}public static void t2(){t3();}public static void t3(){Throwable t = new Throwable();StackTraceElement[] st = t.getStackTrace();for (int i = 0; i < st.length; i++) {System.out.println(st[i]);}}/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stubt1();}}

?结果:

exception.ExceptionTest.t3(ExceptionTest.java:16)exception.ExceptionTest.t2(ExceptionTest.java:12)exception.ExceptionTest.t1(ExceptionTest.java:8)exception.ExceptionTest.main(ExceptionTest.java:28)

?

?? 跟踪其getStackTrace所在方法的被调用情况,采用堆栈存储形式,后进先出。

?

?

?

?

热点排行