常见异常
Error 和 Exception的区别
- Error:程序无法处理的系统错误,编译器不做检查
- Expection:程序可以处理的异常,捕获后可能恢复
Exception
RunTimeException:不可预知的,程序应当自行避免
非RunTimeException:可预知的,从编译器检验的异常
常见异常
- RuntimeException:
- NullPointerException -空指针引用异常
- ClassCastException -类型强制转换异常
- IllegalArgumentException -传递非法参数异常
- IndexOutOfBoundsException -下标越界异常
- NumberFormatException -数字格式异常
- 非RuntimeException:
- ClassNotFoundException -找不到指定的class异常
- IOException -IO操作异常
- Error
- NOClassDefFoundError -找不到指定的class的异常
1.类依赖的class或者jar不存在
2.类文件存在,但是存在不同的域中
3.大小写问题,javac编译的时候是无视大小写的,很有可能编译出来的class文件就与想要的不一样
- StackOverflowError -深递归导致栈被耗尽而抛出的异常
- OutOfMemoryError -内存溢出异常