Error和exception
- 常见的运行期异常有哪些 unchecked exception
ArrayIndexOutOfBoundsException 数组下标越界异常,
ArithmaticException 算数异常 如除数为零
NullPointerException 空指针异常
IllegalArgumentException 不合法参数异常 - 常见的编译期异常有哪些
NotfoundClassException -
notfoundclassexception和Noclassdeferror的区别
classnotfoundexception是编译器异常Java编译器会检查它,也就是说,当程序中可能出现这类异常,要么用try-catch语句捕获它,要么用throws子句声明抛出它,否则编译不会通过。
noclassdeffound 是编译成功后,执行过程中找不到class导致抛出错误 - try,catch,finally的执行顺序问题
-
throw和throws的区别
throw与throws关键字联合使用问题。
1)throw:抛出异常。
2)throws:在方法声明处使用,表示此方法不处理异常,而在调用此方法处处理异常。
Exception是必须处理的,而RuntimeException异常是可以不处理的。但是为了保证程序正常运行,最好处理。
如果自定义异常,直接继承异常即可。