自学内容网 自学内容网

Error和Exception区别

Error类型的错误通常为虚拟机相关错误,如系统崩溃,内存不足,堆栈溢出等,编译器不会对这类错误进行检测,JAVA应用程序也不对这类错误进行捕获,一旦这类错误发生,通常应用程序会被终止,仅靠应用程序本身无法恢复;
Exception 类的错误是可以在应用程序中进行捕获并处理的,通常遇到这种错误,应对其进行处理,使应用程序可以继续正常运行。

性质

Error:表示系统级错误或低层资源的错误,通常是由Java虚拟机(JVM)本身或者系统级错误(如内存溢出、栈溢出等)导致的。Error通常是不可预见的,也是不可恢复的,它会导致应用程序中断运行。
Exception:表示需要程序捕获或者需要程序进行处理的异常情况。这些异常通常是由于程序设计的瑕疵、外在的输入等引起的一般性问题。Exception是程序运行中可预料的异常情况,可以被程序捕获并处理。

处理方式

Error:由于Error通常表示系统级错误或资源耗尽,因此大多数情况下程序无法处理Error。当出现Error时,JVM通常会选择终止线程或者整个程序。

Exception:Exception可以被程序捕获并处理。在Java中,可以使用try-catch语句块来捕获Exception,并在catch块中执行相应的异常处理逻辑。根据Exception的不同类型,程序员可以选择是否进行捕获和处理。

分类

Error:Error类及其子类都是不可控制的(unchecked),即编译器不会强制要求程序员在代码中处理Error。常见的Error类型包括OutOfMemoryError、StackOverflowError等。


原文地址:https://blog.csdn.net/xing_jian1/article/details/140648767

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!