异常(事故) *异常是一个类 Thorwable *Error(错误) 代表虚拟机本身的错误,不能被程序员通过代码修改 *Excepction(异常) *运行时异常 * 非运行时异常 *捕获异常 * 格式 :try{可能发生异常的语句}catch(异常的类型){处理这个异常}finally{必须执行的语句} *异常的抛出 *throw:自己手动抛出异常。或者说此处一定会出异常。 *throws:用在方法声明后,表示方法可能会抛出异常。*多重异常try{}catch(异常的类型){}catch(异常的类型){}..*自定义异常复制代码
记下几个经常遇见的异常:
算术异常类:ArithmeticExecption空指针异常类:NullPointerException类型强制转换异常:ClassCastException数组负下标异常:NegativeArrayException数组下标越界异常:ArrayIndexOutOfBoundsException违背安全原则异常:SecturityException文件已结束异常:EOFException文件未找到异常:FileNotFoundException字符串转换为数字异常:NumberFormatException复制代码
在自己敲代码时遇到一个问题,就是除数为零时,传入是double类型时会出现INFINITY, 自己找了下资料:
Infinity是无穷大的意思,一个正数除以一个无限趋近于0的数结果就是无限趋近于无穷大,除以0当然就是无穷大了,这只适用于float和double,至于其它类型为什么不行,你应该去问jdk的开发人员