Error:
-
是程序无法处理的错误,表示应用程序运行时出现严重问题。
-
大多数错误与程序员编写的代码无关,而表示代码运行时 JVM出现的问题。
-
这些错误表示故障发生于虚拟机自身、或者发生在虚拟机试图执行应用时。
- 例如,Java虚拟机运行错误VirtualMachineError
- 当 JVM 不再有足够的内存资源继续执行操作时,将出现 OutOfMemoryError
- 当递归过深,栈帧数超出了虚拟机栈深度引发StackOverflowError
-
这些错误发生时,JVM一般会终止线程。
-
这些错误是不可查的,因为它们在应用程序的控制和处理能力之外。
Exception
是程序本身可以处理的异常。Exception 类有一个重要的子类 RuntimeException。
RuntimeException 类及其子类表示“JVM 常用操作”引发的错误。
例子
-
若试图使用空值对象引用:NullPointerException
-
数组越界:ArrayIndexOutOfBoundException
-
自定义BussinessException:
private String code;// 错误代号 private String msg;// 错误信息