Exception

Java程序失败-->生成异常对象封装错误条件-->抛与运行代码
多线程程序中,线程生成未处理的异常,可能终止,但其它线程不受影响
错误Throwable:
==>致命Error-->也称硬错误,典型:OutOfMemeryError-->一般由Java API或JVM自己抛出
==>非致命Exception-->也称Bug,典型:NullPointerException
带资源的try语句:
try (InputStream is = new FileInputStream(source)) {...}
该资源无需finally语句清理,它会自动被关闭
try {...} catch (..) {...} finally {...}
不管try,catch中怎样(即使带有return且被执行),finally都将被执行
重写方法中声明异常规则:
>> 重写方法必须抛出与被重写方法抛出的异常类型相同的异常
>> 重写方法能够抛出被重写方法抛出的异常的子异常
>> 重写方法不能抛出被重写方法声明的异常的父异常
>> 在重写方法抛出多个异常的状况下,重写方法必须抛出被重写方法抛出的异常的子集
>> 重写方法未抛异常,则被重写方法也不能,反之亦然
相关文章
相关标签/搜索