标签:12 自定义 子类 暑期 线程 熔炉 类型 异常 运行
运行时异常都是 RuntimeException 类及其子类异常,如 NullPointerException、IndexOutOfBoundsException 等,这些异常是不检查异常,程序中可以选择捕获处理,也可以不处理。这些异常一般由程序逻辑错误引起,程序应该从逻辑角度尽可能避免这类异常的发生。
非运行时异常是指 RuntimeException 以外的异常,类型上都属于 Exception 类及其子类。从程序语法角度讲是必须进行处理的异常,如果不处理,程序就不能编译通过。如 IOException、ClassNotFoundException 等以及用户自定义的 Exception 异常(一般情况下不自定义检查异常)。
表 1 和表 2 分别列出了 java.lang 中定义的运行时异常和非运行时异常的类型及作用。
表 1 Java中常见运行时异常
异常类型 | 说明 |
ArithmeticException |
算术错误异常,如以零做除数 |
ArraylndexOutOfBoundException |
数组索引越界 |
ArrayStoreException |
向类型不兼容的数组元素赋值 |
ClassCastException |
类型转换异常 |
IllegalArgumentException |
使用非法实参调用方法 |
lIIegalStateException |
环境或应用程序处于不正确的状态 |
lIIegalThreadStateException |
被请求的操作与当前线程状态不兼容 |
IndexOutOfBoundsException |
某种类型的索引越界 |
NullPointerException |
尝试访问 null 对象成员,空指针异常 |
NegativeArraySizeException |
再负数范围内创建的数组 |
NumberFormatException |
数字转化格式异常,比如字符串到 float 型数字的转换无效 |
TypeNotPresentException |
类型未找到 |
表 2 Java常见非运行时异常
异常类型 | 说明 |
ClassNotFoundException |
没有找到类 |
IllegalAccessException |
访问类被拒绝 |
InstantiationException |
试图创建抽象类或接口的对象 |
InterruptedException |
线程被另一个线程中断 |
NoSuchFieldException |
请求的域不存在 |
NoSuchMethodException |
请求的方法不存在 |
ReflectiveOperationException |
与反射有关的异常的超类
|
标签:12,
自定义,
子类,
暑期,
线程,
熔炉,
类型,
异常,
运行
From: https://www.cnblogs.com/galileo9527/p/17625573.html