关键区别——java中的检查异常与未检查异常
异常是运行时错误。有两种类型的异常称为检查异常和未检查异常。当发生选中的异常时,Java应用程序连接到外部资源,如文件、设备或数据库。这些异常由编译器检查。检查的异常的一些示例包括IO异常和FileNotFound异常。当发生未检查的异常时,应用程序不会连接到任何外部资源。编译器不检查这些异常。未检查异常的一些示例包括算术异常和ArrayOutOfBound异常。本文讨论Java中checked和unchecked异常之间的区别。Java中checked异常和unchecked异常之间的关键区别在于编译器检查checked异常,而编译器不检查checked异常。
目录
1. 概述和主要区别
2. Java中的检查异常是什么
3. 什么是Java中的未检查异常
4. Java中Checked和Unchecked异常的相似性
5. 并行比较——Java中以表格形式显示的选中异常与未检查异常
6. 摘要
什么是java中的检查异常(checked exception in java)?
当发生选中的异常时,Java应用程序连接到外部资源。此资源可以是打印机等设备。它可以是文件或数据库。因此,编译器会检查这些异常。IO异常是已检查的异常。它是由于设备中的错误而发生的。当应用程序访问不存在的文件时,它将导致FileNotFound异常。应用程序可以连接到MySQL、Oracle等数据库来存储数据。如果发生与数据库相关的错误,则是SQL异常。这些是一些检查异常的例子。在所有这些中,应用程序都连接到外部资源。在选中的异常中,必须处理异常。如果不进行处理,程序的正确流将终止,并且不会生成类文件。可以使用try,catch块来处理错误。
根据上述内容,FileReader从文件中读取数据。text1.txt文件在指定位置不存在。可以给出异常的代码放在try块中。要打印的消息在catch块中。由于没有名为text1.txt的文件,这将导致FileNotFoundException。通过使用异常处理,消息被打印到屏幕上。
什么是java中未检查的异常(unchecked excepti*** in java)?
编译器不检查未检查的异常。与选中的异常不同,除了未选中的异常,Java应用程序不连接到外部资源,如文件、数据库或设备。一些常见的未检查异常是算术异常、ArrayOutOfBound异常和null指针异常。
内a=10,b=0;
int div=a/b;
System.out.println(分部);
这将导致算术异常,因为将“a”除以0。参考以下代码。
根据上述程序,变量a是整数值。变量b为0。这两个数的除法是除零。因此,它将导致算术异常。可以使用try-catch块处理它。可能导致异常的语句放在try块内。要显示的消息位于catch块中。
参考下面的代码。
int array1[]={1,2,3,4,5};
System.out.println(阵列1[5]);
这将导致异常。array1是一个包含5个元素的数组。数组的起始索引为零。打印第5个索引值会导致异常,因为它超出了界限。array1的最大索引为4。
根据上述程序,array1有5个元素。打印索引为6的元素将导致异常,因为它是越界的。array1中可以存储的最大索引是5。通过执行catch块打印错误消息。
什么是java中checked与unchecked异常的相似性(the similarity between checked and unchecked exception in java)?
- Java中的Checked和Unchecked异常都是Java中的异常类型。
选中的(checked)和java中的未检查异常(unchecked exception in java)的区别
Java中的Checked vs Unchecked异常 | |
检查的异常是由编译器检查的运行时错误。 | 未检查异常是编译器未检查的运行时错误。 |
发生 | |
当发生选中的异常时,Java应用程序连接到外部资源,如文件、设备或数据库。 | 当发生未检查的异常时,Java应用程序不会连接到外部资源。 |
示例 | |
IOException、FileNotFoundException、SQLException是检查异常的一些示例。 | 算术异常、ArrayOutOfBoundException、NullPointerException是未检查异常的一些示例。 |
总结 - 选中的(checked) vs. java中的未检查异常(unchecked exception in java)
异常是中断程序流执行的事件。有两种例外情况。它们被称为检查异常和未检查异常。本文讨论了检查异常和未检查异常之间的区别。Java中checked和unchecked的区别在于编译器检查checked异常,而编译器不检查checked异常。由于异常会影响程序执行的正确流程,因此处理异常是一个很好的编程实践。