/*

* 异常:   是在运行时期  发生的 不正常情况。


在java中类的形式对不正常情况进行了描述和封装对象。

*

* 描述不正常的情况类,就成为异常。

*

* 问题很多,就意味着描述得类也很多,就将其共性进行向上抽取,形成了异常体系。

* 最终问题(不正常情况)就分为了两大类。

* Throwable:无论是error还是异常,问题发生就应该可抛出,  让调用者知道并处理。。。。。。


该体系的特点就在于Throwable及其所有的子类都具有可抛性


1.不可处理的异常。。Error    特点:是由jvm抛出的严重性问题。  这种问题发生一般不针对行处理。直接修改程序。


2.可以处理的异常 。。Exception

* 可抛性其实是通过两个关键字体现的:


throws,  throw。。凡是被这两个关键字所操作的类和对象都具备可抛性。

*

* throws  和throw 的区别:


1》 throws使用在函数上。


throw使用在函数内。

*  2》throws抛出的是异常类,可以抛出多个,用逗号隔开。

*  
throw是抛出的是异常对象。

*

*

*  异常处理的原则:

*  1.函数内部如果抛出需要检测的异常,那么函数上必须要声明。否则必须要在函数内用try  catch捕捉。否则编译失败。

*  2.如果调用到了声明异常的函数。要么try catch要么throws,否则编译失败。

*  3.是么时候使用catch  是么时候使用throws

*  
功能内容可以解决,用catch。

*  
解决不了用throws告诉调用者,有调用者解决。

*  4.一个功能如果抛出多个异常,那么调用时,必须要有对应多个catch进行针对性处理。

*  
内部有几个需要检测的异常,就跑出几个异常。

*

*  try catch  finally的使用:

*  1.try catch finally

*  2.try catch(多个)大概没有必要资源需要释放时,可以不定义finally

*  3.没有catch就没有处理

*

*  异常的注意事项:

*  1.子类再覆盖父类方法时,父类的方法如果抛出了异常,那么子类的方法只能抛出父类的异常或者该异常的子类。

*  
简单地说:  子类覆盖父类只能抛出父类的异常或者子类或者子集。

*  注意:  如果父类的方法没有抛出异常,那么子类覆盖时绝对不能抛出,就只能try。

l  */






版权声明:本文为博主原创文章,未经博主允许不得转载。

最新文章

  1. Binding笔记
  2. Shelve Instance 操作详解 - 每天5分钟玩转 OpenStack(38)
  3. C++中的4个类型转换关键字
  4. 无废话Android之smartimageview使用、android多线程下载、显式意图激活另外一个activity,检查网络是否可用定位到网络的位置、隐式意图激活另外一个activity、隐式意图的配置,自定义隐式意图、在不同activity之间数据传递(5)
  5. Java字符串split函数的注意事项
  6. HOG特征(Histogram of Gradient)总结(转载)
  7. python笔记之常用模块用法分析
  8. 控制结构(5) 必经之地(using)
  9. 程序员是这样区分Null和Undefined
  10. 纯CSS3浮雕质感的立体文字旋转动画
  11. ubuntu svn服务本地搭建使用
  12. Lintcode214-Max of Array-Naive
  13. spring boot实现ssm(2)功能
  14. 十万的License只取决于一个连接
  15. Python3基础 str format 输出花括号{}
  16. OAF 通过个性化 在标准事件上添加验证
  17. iOS - 工程文件冲突 - 解决方式
  18. ubuntu 14.04英文环境设置成中文
  19. UGUI 事件穿透规则
  20. tomcat 部署项目到服务器

热门文章

  1. SharePoint 2013 开发——APP开发的考虑和建议
  2. 欢迎参加MVP主讲的Windows 10开发线上课程
  3. C# 3.0 扩展方法[转载]
  4. 《c语言全局变量的用法》
  5. xml文件有误
  6. JS中关于 一个关于计时器功能效果的实现
  7. sql server手工注入
  8. IT人才最容易犯的17个错误--人生警言
  9. C# 定义常量 两种实现方法
  10. Java Proxy