Java异常
2016-04-20 10:25
375 查看
分类
1. Exception
已检查异常
特点:需要捕获,不然就无法编译通过。因为这些异常往往不是因为程序逻辑错误导致,是一种有可能会发生的情况,程序必须对这种情况进行想要的处理,所以要捕获。例如IOException,由于没有权限,或者其他原因,导致没能成功打开文件,就会抛出IOException。常见的已检查异常有:
java.lang.ClassNotFoundException java.lang.NoSuchMetodException java.io.IOException
未检查异常(RuntimeException的子类)
特点:不需要捕获,也不应该捕获。因为未检查异常抛出,表示程序代码逻辑上有误,应该去修正程序代码逻辑,而不应该去捕获。例如NullPointException,就不应该捕获,应该在代码逻辑上加入非空判断。常见未检查异常
Java.lang.ArithmeticException Java.lang.ArrayStoreExcetpion Java.lang.ClassCastException Java.lang.IndexOutOfBoundsException Java.lang.NullPointerException
2. Error
当程序发生不可控的错误时,通常做法是通知用户并中止程序的执行。与异常不同的是Error及其子类的对象不应被抛出。Error是throwable的子类,代表编译时间和系统错误,用于指示合理的应用程序不应该试图捕获的严重问题。
Error由Java虚拟机生成并抛出,包括动态链接失败,虚拟机错误等。程序对其不做处理。
相关文章推荐
- java国际化与ResourceBundle使用详解
- springMVC 与 struts+hibernate+spring优缺点(转)
- JAVA中的基础-----重载与重写(覆盖)的区别:overload与override
- Struts2中的OGNL详解
- SpringMVC + spring3.1.1 + hibernate4.1.0 集成及常见问题总结
- eclipse cdt使用经验汇总(待补充)
- java程序执行SQL脚本文件
- spring Junit下的延迟加载问题(Hibernate)
- JAVA反射机制详解
- Ubuntu启动eclipse问题
- Ubuntu启动eclipse问题
- 自定义View:关于Caused by: java.lang.NoSuchMethodException异常
- Java线程同步小陷阱,你掉进去过吗?
- java.util.concurrent.locks与synchronized及其异同
- 避免Java应用中NullPointerException的技巧和最佳实践
- java for循环里面执行sql语句操作,有效结果只有一次,只执行了一次sql mybatis 循环执行update生效一次 实际只执行一次
- eclipse配置
- Java多线程:线程同步与关键字synchronized
- java设计模式之单例模式的七种写法
- java -jar Test.jar找不到main class问题