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

版权声明:未经本人许可,不得使用或转载。 https://blog.csdn.net/mykc208/article/details/82251798

异常

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"):

猜你喜欢

转载自blog.csdn.net/mykc208/article/details/82251798
今日推荐