Java中error和exception的区别
程序员文章站
2022-03-02 18:54:43
...
Java中error和exception的区别:Error错误是程序无法处理的错误,这些错误标识故障发生于虚拟机自身或者发生在虚拟机试图执行应用时,一般不需要程序处理。exception异常是程序本身可以处理的异常.
Error
:错误是程序无法处理的错误,这些错误标识故障发生于虚拟机自身或者发生在虚拟机试图执行应用时,一般不需要程序处理。
Error(错误)和exception(异常)都是java.lang.Throwable
类的子类。Error错误是任何处理技术都无法恢复的情况。这肯定会导致程序非正常终止。Error错误属于未检查类型,大多数发生在运行时。Error错误的一些例子是内存不足错误或系统崩溃错误。
// 通过无限递归演示堆栈溢出错误 class * { public static void test(int i) { if (i == 0) return; else { test(i++); } } } public class ErrorEg { public static void main(String[] args) { *.test(5); } }
输出:
Exception in thread "main" java.lang.*Error at *.test(ErrorEg.java:7) at *.test(ErrorEg.java:7) at *.test(ErrorEg.java:7) at *.test(ErrorEg.java:7) at *.test(ErrorEg.java:7) ...
exception
:是程序本身可以处理的异常。
异常是在运行时发生并可能导致程序终止的条件。但是,使用try
、catch
和throw
关键字可以恢复它们。
异常分为两类:已检查异常和未检查异常。编译器在编译时知道已检查的异常(如IOException
),而编译器在运行时知道未检查的异常(如ArrayIndexOutOfBoundException
)。它主要是由程序员编写的程序引起的。
public class ExceptionEg { public static void main(String[] args) { int a = 5, b = 0; try { int c = a / b; } catch (ArithmeticException e) { e.printStackTrace(); } } }
输出:
java.lang.ArithmeticException: / by zero at ExceptionEg.main(ExceptionEg.java:8)
相关推荐:《Java教程》
本篇文章就是关于Java中error和exception的区别介绍,希望对需要的朋友有所帮助!
以上就是Java中error和exception的区别的详细内容,更多请关注其它相关文章!
上一篇: java字符串的重要方法的使用实例
推荐阅读
-
jquery中的mouseleave和mouseout的区别 模仿下拉框效果
-
java中hashCode和equals什么关系,hashCode到底怎么用的
-
java中为什么接口中的属性和方法都默认为public?
-
Python中staticmethod和classmethod的作用与区别
-
JSP中的编译指令和动作指令的两点区别
-
Java中String、StringBuffer、StringBuilder的区别(转)
-
浅析php中抽象类和接口的概念以及区别
-
Java中HashMap和TreeMap的区别深入理解
-
SQL中distinct 和 row_number() over() 的区别及用法
-
详解Node.js中path模块的resolve()和join()方法的区别