Java中运行时异常和非运行时异常什么鬼?

Java中的异常分类

RuntimeException(也称unchecked exceptions,运行时异常)

就是咱们在开发中测试功能时程序终止,控制台出现的异常。(通常来讲,出现运行时异常基本就是你的问题,要检查代码,把运行时异常想成你的女友,无论怎么说,都是你的错(✿◕‿◕✿))常见的运行时异常有:数组

  • ArrayStoreException:试图将错误类型的对象存储到一个对象数组时抛出的异常
  • ClassCastException:试图将对象强制转换为不是实例的子类时,抛出该异常
  • IllegalArgumentException:抛出的异常代表向方法传递了一个不合法或不正确的参数
  • IndexOutOfBoundsException:指示某排序索引(例如对数组、字符串或向量的排序)超出范围时抛出
  • NoSuchElementException:代表枚举中没有更多的元素
  • NullPointerException:当应用程序试图在须要对象的地方使用 null 时,抛出该异常
其余RuntimeException
  • ArithmeticException——因为除数为0引发的异常;
  • ArrayStoreException——因为数组存储空间不够引发的异常;
  • IllegalMonitorStateException——监控器状态出错引发的异常;
  • NegativeArraySizeException—一数组长度是负数,则产生异常;
  • OutofMemoryException——用new语句建立对象时,如系统没法为其分配内存空 间则产生异常;
  • SecurityException——因为访问了不该访问的指针,使安全性出问题而引发异常;
  • IOException——因为文件未找到、未打开或者I/O操做不能进行而引发异常;
  • ClassNotFoundException——未找到指定名字的类或接口引发异常;
  • CloneNotSupportedException——一程序中的一个对象引用Object类的clone方法,但 此对象并无链接Cloneable接口,从而引发异常;
  • InterruptedException—一当一个线程处于等待状态时,另外一个线程中断此线程,从 而引发异常,有关线程的内容,将在下一章讲述;
  • NoSuchMethodException一所调用的方法未找到,引发异常;
  • Illega1AccessExcePtion—一试图访问一个非public方法;
  • StringIndexOutOfBoundsException——访问字符串序号越界,引发异常;
  • ArrayIdexOutOfBoundsException—一访问数组元素下标越界,引发异常;
  • NumberFormatException——字符的UTF代码数据格式有错引发异常;
  • IllegalThreadException—一线程调用某个方法而所处状态不适当,引发异常;
  • FileNotFoundException——未找到指定文件引发异常;
  • EOFException——未完成输入操做即遇文件结束引发异常。

非RuntimeException(也称checked exceptions,编译异常)

是RuntimeException之外的异常,类型上都属于Exception类及其子类。从程序语法角度讲是必须进行处理的异常,若是不处理,程序就不能编译经过。如IOException、SQLException等以及用户自定义的Exception异常,通常状况下不自定义检查异常。 通俗的话说就是在写代码时出现红线,须要try-catch或者throws时出现的异常。安全

相关文章
相关标签/搜索