java6

exception处理

try{}catch(){}catch{}finally{}

依次向上层抛出异常,知道发现俘获异常的语句。调用栈

throwable:Error、Exception

多异常处理:

exception是所有异常的父类

子类异常要排到父类异常前面

finally语句

无论是否有异常都执行

RuntimeException及其子类,可以不明确处理,否则称为受检的异常。

受检的异常:要么catch,要么throws

try-with-resource  

try(type  var = new type()){

...

}自动添加了finally{var.close();}

重抛异常

throw e; 将当前异常再次抛出

throw new Exception("some message");重新生成一个异常并抛出

throw new Exception("some message", e);重新生成并抛出新异常,该异常中包含了当前异常的信息;可用e.getCause()来得到内部异常

断言assertion

assert 表达式;

assert 表达式:信息;  //如果表达式不为true,则程序产生异常,输出错误信息

java -ea -cp ...  className

测试驱动@Test

java测试过程经常使用JUnit框架 www.junit.org

eclipse中,项目右键-new-junit test case (run as-Junit test)

程序中的错误

syntax error  语法错,编辑编译器发现

runtime error 运行错误,异常处理机制

logic error  逻辑错误,debug,unit test

posted @ 2015-09-13 09:23  jack-xu  阅读(156)  评论(0编辑  收藏  举报