1、Java学习手册:Java基础知识点
2、Java学习手册:Java面向对象面试问题
3、Java学习手册:Java集合、泛型面试问题
4、Java学习手册:Java并发与多线程面试问题
5、Java学习手册:Java虚拟机面试问题
6、Java学习手册:Java IO面试问题
7、Java学习手册:Java反射机制面试问题
8、Java学习手册:Java网络编程面试问题
9、Java学习手册:Java异常面试问题
10、Java学习手册:Java设计模式面试问题
11、Java学习手册:Java数据库面试问题
一、运行时异常与检查异常
二、Error与Exception
Java学习手册:Error(错误类)&Exception(异常类)
三、异常的处理原理
四、Error和Exception有什么区别?
Java中的Throwable类有两个子类,分别是Error和Exception。Error类及其子类用于定义合理的Java应用程序不应该尝试处理的错误信息;Exception类及其子类用于定义合理的Java应用程序需要捕获的异常信息。异常又分为运行时异常和非运行时异常,运行时异常是RuntimeException类及其子类,除此以外的异常都是非运行时异常。
五、常见的RuntimeException
(1)NullPointerException - 空指针引用异常
注:一个引用数据类型的值为null,调用这个对象的属性或方法时,会引起该异常。
(2)ClassCastException - 类型强制转换异常
(3)IllegalArgumentException - 传递非法参数异常
(4)ArithmeticException - 算术运算异常
(5)ArrayStoreException - 向数组中存放与声明类型不兼容对象异常
(6)IndexOutOfBoundsException - 下标越界异常
注:在使用数组或集合的时候,下标大于最大下标值或使用负下标值时都会引起该异常。
(7)NegativeArraySizeException - 创建一个大小为负数的数组错误异常
(8)NumberFormatException - 数字格式异常
(9)SecurityException - 安全异常
(10)UnsupportedOperationException - 不支持的操作异常
六、throw和throws有什么区别?
throw关键字⽤来在程序中明确的抛出异常,相反,throws语句⽤来表明⽅法不能处理的异常。每⼀个⽅法都必须要指定哪些异常不能处理,所以⽅法的调⽤者才能够确保处理可能发⽣的异常,多个异常是⽤逗号分隔的。
七、异常处理完成以后,Exception对象会发⽣什么变化?
Exception对象会在下⼀个垃圾回收过程中被回收掉。