RuntimeException 和 Exception 区别、异常的子父级关系
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。
1.java 将所有的错误封装为一个对象,其根本父类为Throwable, Throwable 有两个子类:Error 和 Exception。
2.Error
是Throwable
的子类,用于指示合理的应用程序不应该试图捕获的严重问题。大多数这样的错误都是异常条件。虽然 ThreadDeath
错误是一个“正规”的条件,但它也是 Error
的子类,因为大多数应用程序都不应该试图捕获它。在执行该方法期间,无需在其 throws
子句中声明可能抛出但是未能捕获的 Error
的任何子类,因为这些错误可能是再也不会发生的异常条件。
3.Exception
类及其子类是 Throwable
的一种形式,它指出了合理的应用程序想要捕获的条件。
4.RuntimeException
是那些可能在 Java 虚拟机正常运行期间抛出的异常的超类。可能在执行方法期间抛出但未被捕获的RuntimeException
的任何子类都无需在 throws
子句中进行声明。它是Exception的子类。
5.异常的分类
Error:一般为底层的不可恢复的类;
Exception:分为未检查异常(RuntimeException) 和已检查异常(非RuntimeException)。
未检查异常是因为程序员没有进行必需要的检查,因为疏忽和错误而引起的错误。几个经典的RunTimeException如下:
1.java.lang.NullPointerException;
2.java.lang.ArithmaticException;
3.java.lang.ArrayIndexoutofBoundsException
Runtime Exception:
在定义方法时不需要声明会抛出runtime exception; 在调用这个方法时不需要捕获这个runtime exception; runtime exception是从java.lang.RuntimeException 或java.lang.Error类衍生出来的。 例如:nullpointexception,IndexOutOfBoundsException就属于runtime exception 。
Exception:
定义方法时必须声明所有可能会抛出的exception; 在调用这个方法时,必须捕获它的checked exception,不然就得把它的exception传递下去;exception是从 java.lang.Exception类衍生出来的。例如:IOException,SQLException就属于Exception
Exception 属于应用程序级别的异常,这类异常必须捕捉,Exception体系包括RuntimeException体系和其他非RuntimeException的体系
RuntimeException 表示系统异常,比较严重,如果出现RuntimeException,那么一定是程序员的错误
6.什么是unchecked异常?
即RuntimeException(运行时异常)
不需要try...catch...或throws 机制去处理的异常
转自:https://www.cnblogs.com/jtlgb/p/5985120.html
RuntimeException 和 Exception 区别、异常的子父级关系相关推荐
- RuntimeException和Exception区别
https://www.cnblogs.com/jtlgb/p/5985120.html jtlgb 导航 博客园 首页 新随笔 联系 订阅 管理 < 2018年10月 > 日 一 二 三 ...
- java ztree json_java 树形转换JSON 工具类 / 树形子父级菜单递归 JSON 格式
实体类: package tree; import java.util.List; /** * *2018-11-30 */ public class Menu { // 菜单id private S ...
- get vue 和set 用法_深入剖析Vue源码 - 数据代理,关联子父组件
简单回顾一下这个系列的前两节,前两节花了大篇幅讲了vue在初始化时进行的选项合并.选项配置是vue实例化的第一步,针对不同类型的选项,vue提供的丰富选项配置策略以保证用户可以使用不同丰富的配置选项. ...
- 个人永久性免费-Excel催化剂功能第67波-父子结构表转换添加辅助信息之子父关系篇...
Excel作为一款数据领域的万物互联工具,连接一切外部的多种多样的数据源.将数据带到Excel的环境中,再进行数据处理.转换.统计分析等工作,是众多表哥表姐们每天都在经历的事情. 能最快速将其他来源数 ...
- AE基础教程第一阶段——17父级
父级 父级 选中父级--右键列数--勾选父级即可出现父级 新建一个合成--新建一个圆形工具 锚点设置到中间 右键新建一个文本,放置在圆形下方 将圆形的父级关系设置成形状图层1,圆形就会随着图层一运动缩 ...
- AE基础教程(17)——第17章 父级
父级 父级 选中父级--右键列数--勾选父级即可出现父级. 新建一个合成--新建一个圆形工具: 锚点设置到中间: 右键新建一个文本,放置在圆形下方: 将圆形的父级关系设置成形状图层1,圆形就会随着图层 ...
- Java异常:RuntimeException和Exception的区别
Java设置了异常,旨在鼓励将方法中可能出现的异常告知给使用此方法的程序员.当然了,这种方法是比较优雅的,让我们确切的知道是在哪里出了错,并提供了异常捕获.本篇文章主要对Java中的异常进行介绍与区分 ...
- java runtime 异常_Java中RuntimeException和Exception
在java的异常类体系中,Error和RuntimeException是非检查型异常,其他的都是检查型异常. 所有方法都可以在不声明throws的情况下抛出RuntimeException及其子类 不 ...
- Exception(异常) 和 Error(错误)区别解析
Exception和Error都来自共同的祖先 -- java.lang 包中的 Throwable 类. Error(错误):是程序无法处理的错误,表示运行应用程序中较严重问题. 大多数错误与代码编 ...
最新文章
- varnish 4.0 官方文档翻译12-VCL
- elasticsearch系列五:搜索详解(查询建议介绍、Suggester 介绍)
- QC与WIN7、IE8 兼容问题解决方案
- Java 重定向 无法写入_java IO 文件读入,写入,重定向
- 电脑安装python后开不了机_Python学习第145课——关于无法正常启动centOS问题的解决方案...
- 信息学奥赛一本通(1098:质因数分解)
- 踩准时钟节拍、玩转时间转换,鸿蒙轻内核时间管理有妙招
- hbase 监控指标项
- C# Windows Form编程
- mysql改变授权_mysql8使用grant授权修改
- mysql删除索引_MySQL 索引详解
- Selenium自动化测试——计算器加法测试
- 海康设备添加到萤石云
- 深度学习入门(看了就会)
- yyyy-MM-dd 转化成 中国标准时间(Tue Dec 31 2019 00:00:00 GMT+0800 (中国标准时间))
- 《数据结构》-树(双亲表示法)
- 疯狂的程序员-第六十七章
- python pywin32 的学习笔记
- udpping检测与对端udp协议通信状况
- 移远EC25-xxx国外支持列表
热门文章
- Linux:tomcat安装/版本升级
- 设计模式(一)预备知识
- idea 2020版的Default Setting
- 【Python CheckiO 题解】Pawn Brotherhood
- 【蓝桥杯官网试题 - 算法训练 】K好数(线性dp与优化)
- 【HihoCoder - 1851】D级上司 (树形图,dfs)
- java11创建项目_2019-04-11 使用IDEA创建SpringBoot项目
- confluence添加用户_玩转Confluence插件开发插件模块配置文件介绍(04)
- 铜仁计算机专业学校,听说计算机专业的在本部啊 这是真的么
- android fragment动画,Fragment 的过场动画