java异常分类

转载 2012年03月31日 11:06:21

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。

相关文章推荐

Java异常分类和统一处理

菜鸟笔记 2016-11-18 00:10 异常分类 Java异常分为"检查"和"非检查"两类,"检查"二字的意思是,代码编译时,编译器会去Check一下有没有进行异常处理(捕获或向上...

java虚拟机运行时的内存分类以及出现异常分析

来源:https://my.oschina.net/u/566829/blog/62249   java虚拟机所管理的内存包括以下几个运行时数据区域:  方法区(Method Area):线程共享的,...

Java 异常分类及统一处理

一、异常分类java异常分为”检查”和”非检查”两类,”检查”二字的意思是,代码编译时,编译器会去Check一下有没有进行异常处理(捕获或向上抛),对于归类为需要检查的异常,若没处理,编译就过不去。初...

java常见异常分类总结

算术异常类:ArithmeticExecption 空指针异常类:NullPointerException 类型强制转换异常:ClassCastException 数组负下标异常:N...

Java异常分类及区别

看java的异常结构图   Throwable是所有异常的根,java.lang.Throwable Error是错误,java.lang.Error Exception是异常,java.la...

Java异常的分类

转自: http://blog.csdn.net/ilibaba/article/details/3965359 被架构师问的面试题 1. 异常机制       异常机制是指当程序出现错误...

JAVA中异常的分类

http://www.blogjava.net/balajinima/articles/298342.html 所有异常,都继承自java.lang.Throwable类。 Throwable有两...

6.2-全栈Java笔记:异常处理机制的分类

 异常分类 JDK 中定义了很多异常类,这些类对应了各种各样可能出现的异常事件,所有异常对象都是派生于Throwable类的一个实例。如果内置的异常类不能够满足需要,还可以创建自己的异常类...

Java异常分类和统一处理

一、异常分类        java异常分为"检查"和"非检查"两类,"检查"二字的意思是,代码编译时,编译器会去Check一下有没有进行异常处理(捕获或向上抛),对于归类为需要检查的异常,若没处理...
  • hj7jay
  • hj7jay
  • 2017年02月06日 10:03
  • 366

【java基础】java中异常的分类、区别、表现形式、原则及注意事项!

摘要:异常,是在运行时期发生的不正常情况。接下来我们一起来了解异常的方方面面。 什么是异常? 异常,是在运行时期发生的不正常情况。在java中用类的形式对不正常情况进行了描述和封装对象。描述不正常的情...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java异常分类
举报原因:
原因补充:

(最多只允许输入30个字)