JAVA中的异常

异常类型:
1.检查性异常 最具代表性的检查异常是用户错误或者问题引起的异常,这是无法预见的,例如打开一个不存在的文件。
2.运行时异常 运行时异常是可能被程序员避免的异常,与检查性异常相反,运行时异常可以在编译时忽略。
3.错误   错误不是异常,而是脱离程序员控制的问题,错误在代码中通常被忽略,当栈溢出,错误发生。
 
Exception 类的层次
所有的异常类都是从 java.lang.Exception 类继承的子类
Exception 类是Thrwable 类的子类.除了Exception 类外,Throwable 还有一个子类Error
Java 程序通常不捕获错误,错误一般发生在严重故障时,他们在Java程序的处理范围之外。
Error用来指示运行时环境发生的错误
异常通常有两个子类,IOException 和 RuntimeException 类
检查性异常与非检查性异常
1.所有的检查性异常都是继承自 java.lang.Exception; 所有的非检查性一茶行都是继承自 java.lang.RuntimeExceptin.
2.不同的处理方式:检查性异常必须使用try catch 或者throws 等关键字处理,非检查性异常一般是由于代码写的不够严谨导致。
3. 常见的非检查性异常 控制针异常(NullPointerException),除零异常(ArithmeticException),数组越界异常等等(ArrayIndexOutOfBoundsException)等

Java 内置异常类
java定义了一些异常类在java.lang 标准表中
标准运行时异常类的子类是最常见的异常类,由于java.lang包是默认加载到所有的java程序的,大部分的异常从运行时异常类继承而来的异常都可以直接使用。
常见的非检查项异常
ArithmeticException 当出现异常的运算条件时,抛出次异常,一个整数除以0时
ArrayIndexOutOfBoundsException 用非法索引访问数组时抛出的异常,如果索引为负或者超出数组大小,则该索引为非法索引
ArrayStoreException 试图将错误类型的对象存储到一个对象数组时的异常
ClassCastException 当试图将对象转换为不是实例的子类事,抛出异常
IIegalArgumetException 抛出的异常表名向方法传递了一个不合法或者不正确的参数
IndexOutOfBoundsException 指示某排序索引超出(例如数组,字符串或者向量的排序)范围
NegativeArraySizeException 当应用试图创建大小为负的数组时,则抛出该异常
SecurityException 由安全管理器抛出的异常,指示存在安全侵犯
非检查性异常
ClassNotFoundException 应用程序试图加载类时,找不到相对应的类,抛出该异常
IIegalAccessException 当试图使用Class类中的newInstance方法创建一个类的实例,而指定的类对象因为是一个接口或者一个对象无法实例化,而抛出
NoSuchMethodException 请求的方法不存在

 

 如文中有错误,请指正! 联系wx 15514769010

 

posted @ 2022-01-07 17:36  几多荒唐乀  阅读(63)  评论(0编辑  收藏  举报