异常:程序出现不正常现象
编译时异常 运行时异常(飘红)
错误:必须改代码,逻辑问题 StackOverflowError
架构
Throwable
Exception Error
RuntimeException
常见异常
ArithmeticException:数学运算异常(分母为0)
ArrayIndexOutOfBoundsException:数组下标越界(下标超出范围) IndexOutOfBoundsExceptionNullPointerException:空指针异常(没有创建对象,还调用对象中方法或属性)
NumberFormatException:数字格式异常(试图将非数值类型字符串转为数字类型时)
异常处理
try{
可能发生异常的代码
}catch(捕获异常){
处理异常
}finally{
总是执行
}
1,catch可以有多个,但父类一定放在后面
2,finally语句块可以没有
3,catch语句块可以没有,但必须有finally
final
finally
finalize垃圾回收时调用
自动垃圾回收机制
jvm高级特性(java圣经)