Java中,所有的异常都有一个共同的祖先java.lang包中的Throwable类。Throwable类有两个重要的子类Exception(异常)和Error(错误)。
Exception和Error二者都是Java异常处理的重要子类,各自都包含大量子类。
Error:Error属于程序无法处理的错误,是JVM需要负担的责任,无法通过try-catch来进行捕获。例如,系统崩溃,内存不足,堆栈溢出等,编译器不会对这类错误进行检测,一旦这类错误发生,通常应用程序会被终止,仅靠应用程序本身无法恢复。
比如StackOverFlowError;VirtualMachineError;OutofMemoryError;ThreadDeath
Exception:程序本身可以处理的异常,可以通过catch来进行捕获,通常遇到这种错误,应对其进行处理,使应用程序可以继续正常运行。Exception又可以分为运行时异常(RuntimeException,又叫非受检查异常unchecked Exception)和非运行时异常(又叫受检查异常checked Exception)。
checked Exception就是在写代码的时候,需要写try catch的Exception,这种Exceptio
Java中Exception和Error有什么区别?
Java中的Exception和Error都是Throwable的子类,其中Error是程序无法处理的错误,如系统崩溃、内存不足,通常不被捕获。Exception是可处理的异常,分为运行时异常和非运行时异常,可以通过try-catch捕获。Error和Exception体现了Java对异常情况的分类,异常处理是通过try-catch-finally等关键字实现的。
摘要由CSDN通过智能技术生成