1. 异常

用户希望在出现错误时,程序能够采用一些理智的行为。 如果由于出现错误而使得某些操作无法完成,程序应该:  返回到一种安全状态,并能够进行一些其他的命令; 或者:允许用于保存所有操作的结果,并以适当的方式终止程序。

异常处理的任务:将控制权从错误产生的地方转移给能够处理这种情况的错误处理器。

异常分类:   Throwable: Error和Exception

  • Error:描述饿了Java运行时系统的内部错误和资源耗尽错误。应用程序不应该跑出这种类型的对象。如果出现了这样的内部错误,除了通告给用户,并尽力使程序安全的退出。
  • Exception:    a. RuntimeException:由于程序错误而导致的异常。  (Runtime异常包括:错误的异常转化; 数组越界访问; 访问空指针)

b.其他Exception: 程序本身没有问题,但由于像I/O错误这类问题导致的异常属于其他异常。 (其他Exception:试图在文件尾部后面读取数据; 试图打

开一个不存在的文件;  试图根据给定的字符串查找Class对象,而这个字符串表示的类不存在。)

如果程序出现RuntimeException异常,那么就一定是程序的问题。实际上所有的Exception都出现在运行时

未检查异常:Errot和RuntimeException   已检查异常:其他Exception

一个方法必须声明所有可能抛出的已检查异常,而未检查异常要么不可控制(Error),要么就应该避免发生。如果方法没有声明所有可能发生的已检查异常。编译器就会给出一个错误消息。当然,除了声明异常之外还可以捕获异常。这样会使异常不被抛到方法之外,也不需要throws规范。

最新文章

  1. 在RichFaces中使用Facelets模板
  2. Bootstrap – 1.认识
  3. Android Debugging
  4. css margin居中的问题
  5. MongoDB的安装、配置服务(转)
  6. 重复数据插入unique列时,锁加在哪?
  7. 新鲜博客出炉www.pubwin2009.net
  8. java实现各种数据统计图(柱形图,饼图,折线图)
  9. LeetCode:Rank Scores
  10. Cocos2d-x精华教程汇总(第三期) cocos2d-x最新离线API文档下载(最新版3.6更新。。。)
  11. How to pause the game in Uniy3D
  12. C#Redis字符串
  13. EF Codefirst 初步学习(二)—— 程序管理命令 更新数据库
  14. 从头开始基于Maven搭建SpringMVC+Mybatis项目(1)
  15. linux shell必知必会sed、awk
  16. C#介绍RabbitMQ使用篇一HelloWorld
  17. Docker入门 - 003 Docker 实例
  18. Ubuntu如何自定义tftp服务根目录
  19. Liferay开发人员培训计划
  20. Javascript数据模型

热门文章

  1. Gunicorn、Supervisor
  2. difference between VM, Docker and Vagrant区别
  3. 小程序框架MpVue踩坑日记(一)
  4. python入门常用方法(转json,模拟浏览器请求头,写入文件)
  5. 【BZOJ3745】[Coci2015]Norma cdq分治
  6. 使用OpenSessionInViewFilter的注意事项
  7. 九度OJ 1083:特殊乘法 (基础题)
  8. mysql insert返回主键
  9. Android笔记之动态地添加View
  10. JVM GC调优一则--增大Eden Space提高性能