键差-已勾选vs Java中的未检查异常
例外是运行时错误.有两种类型的异常,称为已检查异常和未检查异常。当发生已检查异常时Java应用程序连接到外部资源,如文件、设备或数据库.控件检查这些异常编译器.检查异常的一些例子是IO异常和FileNotFound异常。当发生未检查的异常时,应用程序不会连接到任何外部资源。编译器不会检查这些异常。未检查异常的一些示例是算术异常和ArrayOutOfBound异常。本文讨论了Java中检查异常和未检查异常之间的区别。的关键的区别在Java中检查和未检查异常之间的区别是已检查的异常由编译器检查,而未检查的异常由编译器不检查.
内容
1.概述及关键区别
2.什么是Java中的检查异常
3.什么是未检查异常在Java
4.Java中选中异常和未选中异常的相似性
5.并列比较-表格形式的Java中选中和未选中异常
6.总结
什么是Java中的检查异常?
当检查异常发生时,Java应用程序连接到外部资源。这个资源可以是一个设备,比如打印机。它可以是一个文件或数据库。因此,这些异常由编译器检查。IO异常是一个检查异常。这是由于设备本身的错误造成的。当应用程序访问一个不存在的文件时,将导致FileNotFound异常。应用程序可以连接到数据库,如MySQL, Oracle等存储数据。如果发生了与数据库相关的错误,那么它将是一个SQL例外。这些是受控异常的一些例子。在所有这些操作中,应用程序都连接到外部资源。在受控异常中,必须处理异常。如果不处理它,程序的正确流程将被终止,并且不会生成类文件。可以使用try, catch块处理错误。

图01:已检查的异常处理
根据上面的描述,FileReader从文件中读取数据。文本1.txt文件在指定位置不存在。可以给出异常的代码放在try块中。要打印的消息在catch块中。由于没有名为text1.txt的文件,这将导致FileNotFoundException。通过使用异常处理,消息被打印到屏幕上。
什么是Java中的未检查异常?
未检查的异常不会被编译器检查。与未检查异常中的未检查异常不同,Java应用程序没有连接到外部资源,如文件、数据库或设备。一些常见的未检查异常有算术异常、ArrayOutOfBound异常和NullPointer异常。
Int a = 10, b = 0;
Int div = a/b;
System.out.println (div);
这将导致一个算术异常,因为将' a '下移0。请参阅下面的代码。

图02:算术异常处理
根据上述方案,变量A为整数值。变量b是0。这两个数的除法就是除以零。因此,它将导致算术异常。可以使用try-catch块来处理它。可能导致异常的语句被放在try块中。要显示的消息在catch块中。
请参阅下面的代码片段。
Int array1[] = {1,2,3,4,5};
System.out.println (array1 [5]);
这将导致异常。array1是一个包含5个元素的数组。的起始索引数组是零。打印5th索引值超出了范围,导致异常。array1的最大索引是4。

图03:ArrayOutOfBound异常处理
根据上面的程序,array1有5个元素。打印索引为6的元素将导致异常,因为它超出了边界。array1中可以存储的最大索引是5。通过执行catch块打印错误消息。
在Java中检查和未检查异常之间的相似性是什么
- Java中的Checked和Unchecked Exception都是Java中的异常类型。
在Java中检查和未检查异常的区别是什么?
Java中的选中异常与未选中异常 |
|
已检查异常是由编译器检查的运行时错误。 | 未检查异常是编译器未检查的运行时错误。 |
发生 | |
当发生检查异常时,Java应用程序连接到外部资源,如文件、设备或数据库。 | 当出现未检查的异常时,Java应用程序没有连接到外部资源。 |
例子 | |
IOException, FileNotFoundException, SQLException是一些检查异常的例子。 | 算术异常ArrayOutOfBoundException、NullPointerException是未检查异常的一些例子。 |
总结- - - - - -检查vs Java中的未检查异常
异常是中断程序流执行的事件。有两种类型的例外。它们被称为受控异常和未受控异常。本文讨论了检查异常和未检查异常之间的区别。在Java中,检查异常和未检查异常之间的区别是,检查异常由编译器检查,而未检查异常不由编译器检查。由于异常会影响程序执行的正确流程,因此处理异常是一个很好的编程实践。
参考:
1.点,教程。“Java异常。”教程点, 2018年1月8日。可以在这里
2. nareshtechnologies。||核心Java常见问题视频, Naresh i Technologies, 2016年12月31日。可以在这里
留下一个回复