java 异常 检查型和非检查型
Java中异常的分类
所有异常,都继承自java.lang.Throwable类。
Throwable有两个直接子类,Error类和Exception类。
Exception
Exception则可使从任何标准Java库的类方法,自己的方法以及运行时任何异常中抛出来的基类型。
异常可分为执行异常(RuntimeException)和检查异常(Checked Exceptions)两种
RuntimeException
RuntimeException在默认情况下会得到自动处理。所以通常用不着捕获RuntimeException,但在自己的封装里,也许仍然要选择抛出一部分RuntimeException。
RuntimeException
是那些可能在 Java 虚拟机正常运行期间抛出的异常的超类。可能在执行方法期间抛出但未被捕获的RuntimeException
的任何子类都无需在throws
子句中进行声明。(java api)
它是uncheckedExcepiton。
Java.lang.ArithmeticException
Java.lang.ArrayStoreExcetpion
Java.lang.ClassCastException
Java.lang.EnumConstantNotPresentException
Java.lang.IllegalArgumentException
Java.lang.IllegalThreadStateException
Java.lang.NumberFormatException
Java.lang.IllegalMonitorStateException
Java.lang.IllegalStateException
Java.lang.IndexOutOfBoundsException
Java.lang.ArrayIndexOutOfBoundsException
Java.lang.StringIndexOutOfBoundsException
Java.lang.NegativeArraySizeException’
Java.lang.NullPointerException
Java.lang.SecurityException
Java.lang.TypeNotPresentException
Java.lang.UnsupprotedOperationException
CheckedException
除了runtimeException以外的异常,都属于checkedException,它们都在java.lang库内部定义。Java编译器要求程序必须捕获或声明抛出这种异常。
一个方法必须通过throws语句在方法的声明部分说明它可能抛出但并未捕获的所有checkedException。
Java.lang.ClassNotFoundException
Java.lang.CloneNotSupportedException
Java.lang.IllegalAccessException
Java.lang.InterruptedException
Java.lang.NoSuchFieldException
Java.lang.NoSuchMetodException
Error
当程序发生不可控这种错误时,通常的做法是通知用户并中止程序的执行。
与异常不同的是Error及其子类的对象不应被抛出。
Error 是 Throwable 的子类,代表编译时间和系统错误,用于指示合理的应用程序不应该试图捕获的严重问题。大多数这样的错误都是异常条件。虽然 ThreadDeath 错误是一个“正规”的条件,但它也是 Error 的子类,因为大多数应用程序都不应该试图捕获它。
在执行该方法期间,无需在其 throws 子句中声明可能抛出但是未能捕获的 Error 的任何子类,因为这些错误可能是再也不会发生的异常条件。
它是uncheckedExcepiton。
转载于:https://www.cnblogs.com/merlini/p/3997732.html
java 异常 检查型和非检查型相关推荐
- java 异常的检查型和非检查型
Java中异常的分类 所有异常,都继承自java.lang.Throwable类. Throwable有两个直接子类,Error类和Exception类. Exception Exception则可使 ...
- JAVA异常实验:车站检查危险品的设备,如果发现危险品会发出警告。编程模拟设备发现危险品
车站检查危险品的设备,如果发现危险品会发出警告.编程模拟设备发现危险品: 编写能够满足如下条件的程序: 编写一个Exception的子类DangerException,该子类可以创建异常对象,该异常对 ...
- Java千百问_04异常处理(007)_常见的java异常有哪些(非运行时)
1.常见的java运行时异常有哪些 了解非运行时异常看这里:什么是java中的异常 常见的运行时异常看这里:常见的运行时异常有哪些 我们所说的常见异常是jdk或者其他常用第三方jar中的异常,出现频 ...
- java各种的不好_译文《最常见的10种Java异常问题》
封面:洛小汐 译者:潘潘 知彼知己,方能百战不殆. 前言 本文总结了有关Java异常的十大常见问题. 目录 检查型异常(checked) vs. 非检查型异常(Unchecked) 异常管理的最佳实践 ...
- java 异常_学习Java,你需要知道这些Java异常
文章目录 异常处理的概念 异常的基本概念 Java异常处理机制的优点 错误的分类 异常的分类 预定义的一些常见异常 异常的处理 抛出异常 捕获异常的语法 生成异常对象 声明自己的异常类 异常处理的概念 ...
- Java异常面试题重点汇总
Java异常架构与异常关键字 Java异常简介 Java异常是Java提供的一种识别及响应错误的一致性机制. Java异常机制可以使程序中异常处理代码和正常业务代码分离,保证程序代码更加优雅,并提高程 ...
- 【2022最新Java面试宝典】—— Java异常面试题(33道含答案)
目录 一.Java异常架构与异常关键字 1. Java异常简介 2. Java异常架构 1.Throwable 2. Error(错误) 3. Exception(异常) 运行时异常 编译时异常 3. ...
- 最最最全面的Java异常面试及解答
点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 作者 | ThinkWon 来源 | blog.csdn ...
- 你所需要的java异常的处理和设计及深入理解,看这篇就差不多了
一. 异常的定义 在<java编程思想>中这样定义 异常:阻止当前方法或作用域继续执行的问题.虽然java中有异常处理机制,但是要明确一点,决不应该用"正常"的态度来看 ...
最新文章
- 系统如何安装到租的服务器,租用服务器后,检查及环境配置步骤
- 数据院携手汽车工程系,女生节尽展清华大数据风采~
- List(JDK1.7)(1)
- openEuler系统配置yum镜像源
- [图文] Fedora 28 使用 Virt-Manager 创建 KVM 虚拟机以及 配置 KVM 虚拟机
- 深入浅出学Hive:Hive参数
- cli3解决 ie11语法错误 vue_基于 Vue + Koa2 + MongoDB + Redis 实现一个完整的登录注册...
- python中的常量是什么意思_第14p,Python中的常量与注释。
- ORACLE 10G修改主机名后EM Enterprise Manager无法启动的解决办法-Robert
- [转]正则表达式中re.match、re.search、re.findall的用法和区别
- 曾经用过的Cookie
- java 从入门到精通PDF
- 遗传算法(Python)
- orcal添加序列让主键的自动增长
- c语言里strcpy作用是什么,c语言中的strcpy是什么意思?
- 华为防火墙L2TP/L2TP over IPSec
- 信鸽推送-10005错误
- linux socket函数详解,linuxSocket_函数.doc
- STM32之内存分布与总线
- 设计模式-代理模式 C#版本