重学Java—异常 、 断言和曰志

异常

1、对于异常情况,Java使用一种称为异常处理的错误捕获机制处理。
2、在Java程序设计语言中,异常对象都是派生于Throwable类的一个实例。
3、Java语言规范将派生于Error类或RuntimeException类
的所有异常称为非检查型异常,所有其他的异常称为检查型异常。
4、不允许在子类的throws说明符中出现超过超类方法所列出的异常类范围。
5、当代码抛出一个异常时,会终止方法中剩余代码的处理,并退出这个方法的执行。 如果方法获得了一些本地资源, 并且只有这个方法自己知道 , 又如果这些资源在退出方法之前必须被回收, 那么就会产生资源回收问题 。而finally子句可以更好地解决这个问题。
6、不管是否有异常被捕获,finally语句中的代码都会被执行。
7、try语句可以只有finally语句,而没有catch子句。
8、可以调用Throwable类的printStackTrace方法访问堆栈轨迹(方法调用过程的列表)的文本描述信息。

断言

断言机制允许在测试期间向代码中插入一些检査语句 。 当代码发布时
, 这些插人的检测语句将会被自动地移走 。
Java 语言引人了关键字 assert 。 这个关键字有两种形式 :
assert 条件 ;

assert 条件 : 表达式 ;
这两种形式都会对条件进行检测 , 如果结果为 false , 则抛出一个 AssertionError 异常。在第二种形式中, 表达式将被传人 AssertionError 的构造器 , 并转换成一个消息字符串 。

日志

基本日志:要生成简单的日志记录,可以使用全局日志记录器(global logger) 并调用其 info 方法:
Logger.getClobal 0,info(“File->Open menu item selected”);
高级日志:在一
个专业的应用程序中,不要将所有的日志都记录到一个全局日志记录器中,而是可以自定义日志记录器。
可以调用 getLogger 方法创建或获取记录器:

private static final Logger myLogger =
Logger.getLogger("com.mycompany.myapp"):
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值