Throwable类

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xiaocxks/article/details/52847456

在java中,根据错误性质将运行错误分为两类:错误和异常

在java程序的执行过程中,如果出现了异常事件
就会生成一个异常对象
生产的异常对象将传递java运行时系统,这一异常的产生和提交过程称为抛出异常throw
当java运行时系统得到一个异常对象时,它将会沿着方法的调用栈逐层回溯,寻找处理这一异常的代码
找到能够处理这类异常那个的方法后
运行时系统会把当前异常对象交给这个方法进行处理
这一过程称为捕获异常catch


java中的所有异常都是由throwable的子类生成的对象


所有的异常类都是throwable类的子类或子类的子类
throwable是object类的直接子类
Error类和Exception类是Throwable类的两个直接子类


Error类包括一些严重的程序不能处理的系统能够错误类
如内存溢出,虚拟机错误,栈溢出等
这类错误一般与硬件有关,与程序本身无关,通常由系统进行处理‘
程序本身无法捕获和处理


Exception类
有些异常在编写程序时无法预料,如中断异常,非法存取异常
为了保证程序的健壮性,必须对这些可能出现的异常进行捕获,并对其进行处理


RuntimeException
ArithmeticException 除数为0引起的异常
ArrayStoreException 数组存储空间不够引起的异常
ClassCastException 当把一个对象归为某个类,但那是基上次对象并不是有这个类创建的,也不是其子类创建的,则会引起异常
IllegalMonitorStateException监控器状态出错引起的异常
NegativeArraySizeException数组长度是负数引起的异常
NullPointerException程序试图访问一个空的数组中的元素或者访问空的对象中的方法或变量时产生的异常
OutofMemoryException用new语句创建对象时,如系统无法为其分配内存空间
SecurityException由于访问了不应访问的指针,使安全性出行问题
IndexOutOfBoundsException数组下标越界或字符串访问越界引起异常
IOException由于文件未找到,未打开或者i/o操作不能进行引起异常
ClassNotFoundException未找到指定名字的类或接口引起的异常
CloneNotSupportedException程序中的一个对象引用object类的clone方法,但对象并没有连接Cloneable接口,引起异常
InterruptedException当一个线程处于等待状态时,另一个线程中断此线程,从而引起异常
NoSuchMethodException所调用的方法未找到
IllegalAccessException 试图访问一个非public的方法
StringIndexOutOfBoundsException访问字符串序号越界
ArrayIndexOutOfBoundsException访问数组元素下标越界
NumberFormatExceptin 
IllegalThreadException 线程调用某个方法而所处状态不适当
FileNotFoundException未找到指定文件
EOFException未完成输入操作就遇到文件结束


猜你喜欢

转载自blog.csdn.net/xiaocxks/article/details/52847456