Rumah > Java > javaTutorial > Java中error和exception的区别

Java中error和exception的区别

藏色散人
Lepaskan: 2019-03-30 10:50:26
asal
7622 orang telah melayarinya

Java中error和exception的区别:Error错误是程序无法处理的错误,这些错误标识故障发生于虚拟机自身或者发生在虚拟机试图执行应用时,一般不需要程序处理。exception异常是程序本身可以处理的异常.

<img src="https://img.php.cn/upload/article/000/000/020/5c9ed8367bf92424.jpg" alt="Java中error和exception的区别" >

<strong>Error</strong>:错误是程序无法处理的错误,这些错误标识故障发生于虚拟机自身或者发生在虚拟机试图执行应用时,一般不需要程序处理。

Error(错误)和exception(异常)都是java.lang.Throwable类的子类。Error错误是任何处理技术都无法恢复的情况。这肯定会导致程序非正常终止。Error错误属于未检查类型,大多数发生在运行时。Error错误的一些例子是内存不足错误或系统崩溃错误。

// 通过无限递归演示堆栈溢出错误

class StackOverflow { 
    public static void test(int i) 
    { 
      
        if (i == 0) 
            return; 
        else { 
            test(i++); 
        } 
    } 
} 
public class ErrorEg { 
  
    public static void main(String[] args) 
    { 
  
        StackOverflow.test(5); 
    } 
}
Salin selepas log masuk

输出:

Exception in thread "main" java.lang.StackOverflowError
    at StackOverflow.test(ErrorEg.java:7)
    at StackOverflow.test(ErrorEg.java:7)
    at StackOverflow.test(ErrorEg.java:7)
    at StackOverflow.test(ErrorEg.java:7)
    at StackOverflow.test(ErrorEg.java:7)
...
Salin selepas log masuk

<strong>exception</strong>:是程序本身可以处理的异常。

异常是在运行时发生并可能导致程序终止的条件。但是,使用trycatchthrow关键字可以恢复它们。

异常分为两类:已检查异常和未检查异常。编译器在编译时知道已检查的异常(如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(); 
        } 
    } 
}
Salin selepas log masuk

输出:

java.lang.ArithmeticException: / by zero
    at ExceptionEg.main(ExceptionEg.java:8)
Salin selepas log masuk

相关推荐:《Java教程

本篇文章就是关于Java中error和exception的区别介绍,希望对需要的朋友有所帮助!


Atas ialah kandungan terperinci Java中error和exception的区别. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan