异常
见过的:
编译报错:
数组越界:
运行报错
等等
解决异常情况的几种处理方法
- 选择以其他方式执行,处理异常(遇到问题解决问题)
- 提前预处理某些可能发生的问题,避免异常发生(预计划,但判断不会全面)
- 不做。消极的
异常处理:
try-catch-finally:
try块可能发生异常的代码
catch(可能出现的异常 e){发生异常时执行的代码}
finally{需要一定执行的代码,一般是关闭某些长期占用的资源}
多个异常需要一个一个捕获;
常见的异常类型:
算数异常:ArithmeticException
数组下标越界异常:ArrayIndexOutOfBoundsException
输入不匹配异常:ClassCastException
空指针异常:NullPointerException
输入输出异常:IOException
数据库异常:SqlException
非法参数异常:IllegalArgumentException
下标越界异常:IndexOutOfBoundsException
数字格式化异常:NumberFormatException
throws抛出异常
位置在方法的小括号和方法的大括号之间
用于声明方法可能有什么异常,并交给下一个调用者处理
如果是接口直接在接口定义是就将异常抛出,不确定就抛根异常
throw自定义抛出异常;
位置位于方法体内部,用于警告