java面试题之Error和Exception的区别
2024-10-21 19:33:32
从概念角度分析:
Error:程序无法处理的系统错误,编译器不做检查;
Exception:程序可以处理的异常,捕获后可能恢复;
总结:前者是程序无法处理的错误,后者是可以处理的异常。
从责任角度分析:
Error:属于JVM需要负担的责任;
Exception:
RuntimeException(非受检异常)是程序应该负担的责任;
Checked Exception (受检异常)可检查异常时Java编译器应该负担的责任。
常见Error和Exception
RuntimeException:
1、NullPropagation:空指针异常;
2、ClassCastException:类型强制转换异常
3、IllegalArgumentException:传递非法参数异常
4、IndexOutOfBoundsException:下标越界异常
5、NumberFormatException:数字格式异常
非RuntimeException:
1、ClassNotFoundException:找不到指定class的异常
2、IOException:IO操作异常
Error:
1、NoClassDefFoundError:找不到class定义的异常
2、StackOverflowError:深递归导致栈被耗尽而抛出的异常
3、OutOfMemoryError:内存溢出异常
最新文章
- windows系统命令总结
- vim - char code and charset
- Autorun.inf文件(2):改变硬盘分区图标
- Apache2 CGI demo
- XmlHttp对象
- spacemacs及python学习-坑之记录
- Pandas系列之入门篇
- 0516js综合练习
- Python爬虫beautifulsoup4常用的解析方法总结
- java接口实现
- 在xcode 上调试c程序
- Linux 学习笔记之超详细基础linux命令 Part 5
- 在PHP5.4上使用Google翻译的API报错
- UI设计教程分享:字体变形—阴阳收缩法
- Loom
- C# 后台模块 Word 模板操作
- [转] 基于C#的波形显示控件的实现
- 《深入理解Android2》读书笔记(四)
- 初识C#设计模式
- 对bookinfo.dat的说明