java 异常处理总结_chn2333333的博客-程序员秘密

技术标签: java  

java 异常处理总结

标签: 异常处理java
80人阅读 评论(0) 收藏 举报
本文章已收录于:

1.异常层次结构

Java中,异常对象都是派生于Throwable类的一个实例。下图是异常层次结构:


源自Core Java(Volume I--Fundamentals 9th Edition) (1) 

    派生于Error和RuntimeException的所有异常称为未检查(unchecked)异常,所有其他的异常称为已检查(checked)异常。

在unchecked异常中,Error类层次描述了Java运行时系统的内部错误和资源耗尽情况,程序员无法控制(these errors are abnormal conditions that should never occur)。继承自RuntimeException的异常,常见的比ArithmeticExceptionIllegalArgumentExceptionNullPointerException,IndexOutOfBoundsException等,都是程序员应该避免发生的异常。所以,应用程序不应该抛出unchecked异常。

此外,方法中所有可能抛出的checked异常都必须声明,否则会出编译错误。

2.继承中重写方法时的异常处理

1)子类重写父类方法要抛出(throws)与父类一致的异常,或者不抛出异常

2)子类重写父类方法所抛出(throws)的异常不能超过父类的范畴

不允许在子类throws中出现超过父类方法所列的异常类范围。注意:捕获与抛出是两个概念,捕获是自己处理,抛出是不知道怎样处理,将异常进行传递



0
0
 
 

更多资料请参考:
猜你在找
深度学习基础与TensorFlow实践
【在线峰会】前端开发重点难点技术剖析与创新实践
【在线峰会】一天掌握物联网全栈开发之道
【在线峰会】如何高质高效的进行Android技术开发
机器学习40天精英计划
Python数据挖掘与分析速成班
微信小程序开发实战
JFinal极速开发企业实战
备战2017软考 系统集成项目管理工程师 学习套餐
Python大型网络爬虫项目开发实战(全套)
查看评论

  暂无评论

发表评论
  • 用 户 名:
  • qq_36638469
  •   
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_36638469/article/details/73441655

智能推荐

变革模式:十室之邑必有忠信,堂堂全浙岂无材勇?_glenwang真北敏捷的博客-程序员秘密

戚继光向上级提出练兵建议:“十室之邑必有忠信,堂堂全浙岂无材勇?诚得浙士三千,亲行训练,比及三年,足堪御敌,可省客兵岁费数倍矣。”对于戚继光的设想,总督胡宗宪开始并不同意。宗宪对浙江人很有...

二维数组和容器_hanhong2726的博客-程序员秘密

二维数组二维数组的初始化public static void ArrayDemo01{ public staic void main(String[] args){ //动态初始化,直接定义一维和二维 int[][] arr1 = new int[3][4]; //先定义一维数组,再定义二维 int[][] arr2 = new int[2][]; arr2[0] = new ...

完美解决Springboot+Vue 跨域问题_nodejs springboot 跨域_黑牛阿杰的博客-程序员秘密

场景:关于Vue Springboot 前后分离跨域问题(nodejs 通用)解决方式:Vue:设置全局参数withCredentials : true服务器俩种方法选一种即可:一:添加配置类 实现 WebMvcConfigurer接口 重写addCorsMappings方法允许的Origins为 * 允许的方法不能直接写 * 必须写成具体的方法名二:注册Cros拦截器到Spring工厂允许的Origins为 * 允许的方法不能直接写 * 必须写成具体的方法名...

将一个对象push到数组之中的几点问题_alkbjewq29891的博客-程序员秘密

在项目开发中我们需要向意数组中添加对象:首先想到的是利用数组的api,----pushdemo:var ar = [1,2,3]var ar2 = [11,22,33]var obj = { a : 0, b : 0 }var myar = [];for(var i = 0; i < 3; i ++){ obj.a = ar[i];obj.b =...

python 逆向生成正则表达式语法_【python】正则表达式_weixin_39577289的博客-程序员秘密

1、正则表达式基础2、python 正则表达式1、正则表达式基础元字符:其他语法:(1)字符转义如果你想查找元字符本身的话,比如你查找.,或者*,就出现了问题:你没办法指定它们,因为它们会被解释成别的意思。这时你就得使用\来取消这些字符的特殊意义。因此,你应该使用\.和\*。当然,要查找\本身,你也得用\\.例如C:\\Windows 匹配C:\Windows(2)分组——用小括号来指定子表达式(...

xib中设置tableHeaderView和tableFooterView_碧羽化屏的博客-程序员秘密

开发久了,发现苹果很多便捷方式,其中有一个就是在xib中拖入tableHeaderView和tableFooterView,极其便利,再也不用写繁琐的代码了。 首先在xib中拖一个UIVew进去,注意先拖入到与Controller的View并列处,如图:[(https://img-blog.csdn.net/20180522172546256?watermark/2/text/aHR0cHM6L...

随便推点

Visual Studio 2010:架构师最怕程序员知道的新工具(1)_梧桐哥的博客-程序员秘密

转自:http://developer.51cto.com/art/201004/192828.htm本文是Visual Studio进化史专题系列文章中,关于Visual Studio 2010的一篇。可以说VS 2010中最引人瞩目的是架构设计方面的改进,是它让Visual Studio 2010真正成为架构师的好伙伴,也是最怕程序员知道的新工具。AD:

大数据是如何定义,多大的数据是大数据?_大数据数据量_暗涧幽火的博客-程序员秘密

大数据是什么?多大的数据叫大数据?很多没有接触过大数据的人,都很难清楚地知道,究竟多大的数据量才可以称之为大数据。那么,根据数据收集的端口,企业端与个人端之间,大数据的数量级别是不同的。企业端(B端)数据近十万的级别,就可以称为大数据;个人端(C端)的大数据要达到千万级别。收集渠道没有特定要求,PC端、移动端或传统渠道都可以,重点要达到这样数量级的有效数据,形成数据服务即可。很有趣,大家可以看到2B和2C,两类大数据差了两个数量级。有些小公司,数据只有千到万级的规模,但经过收集分析,也能从中

protege 中无法看本体的类图,修改方法安装graphviz后遇到的问题_protege ontograph不见了_xuehuabaobeier的博客-程序员秘密

1、安装Graphviz,在protege4版本中能够很容易的dot更改路径,如下:   在Protege的File-> preferences-> OWLViz中修改OWLViz的Dot Application Path2、protege3版本得自己动手改。修改步骤如下:   a、找到protege安装路径下的protege.properties,dot的路径改更改例

leetcode140周赛第四题5086. 不同字符的最小子序列_孤竹彧的博客-程序员秘密

返回字符串 text 中按字典序排列最小的子序列,该子序列包含 text 中所有不同字符一次。示例 1:输入:“cdadabcc”输出:“adbc”示例 2:输入:“abcd”输出:“abcd”示例 3:输入:“ecbacba”输出:“eacb”示例 4:输入:“leetcode”输出:“letcod”很烦,这次周赛题目做的很慢,这道题没解出来看了排名靠前的java代码...

C语言学习笔记之void_miqi1227的博客-程序员秘密

Ø 1、void的字面意思是“无类型”,void *则为“无类型指针”,void *可以指向任何类型的数据。Ø 2、用法1:数据类型的封装     int InitHardEnv(void **handle);     典型的如内存操作函数memcpy和memset的函数原型分别为  void * memcpy(void *dest, const void *src, size_t

接口的定义与使用_mayanni_blogs的博客-程序员秘密

三、接口的定义和使用接口优先原则:即可使用接口又可使用抽象类时,优先考虑接口1.定义:接口就是抽象方法与全局常量的集合;使用interface关键字定义为了区分类与接口,在所有接口前面追加大写字母I。子类实现接口使用implements关键字,并且子类可以同时实现多个接口(接口多继承)子类必须覆写所有抽象方法。并且子类命名一般使用impl结尾。多个接口若有共同子类,可以通过子类进行相...