发生异常后是否可以恢复Java执行?
例外是程序执行期间发生的问题(运行时错误)。发生异常时,程序会突然终止,并且生成异常的行之后的代码将永远不会执行。
Java中有两种类型的异常。
未检查的异常-未检查的异常是在执行时发生的异常。这些也称为运行时异常。其中包括编程错误,例如逻辑错误或API使用不当。编译时将忽略运行时异常。
检查异常-检查异常是在编译时发生的异常,这些也称为编译时异常。这些异常不能在编译时简单地忽略。程序员应注意(处理)这些异常。
恢复程序
当发生检查/编译时异常时,您可以使用try-catch块处理程序,从而恢复程序。使用它们,您可以在执行完整程序后显示您自己的消息或显示异常消息。
示例
import java.io.File; import java.io.FileInputStream; public class Test { public static void main(String args[]){ System.out.println("Hello"); try{ File file =new File("my_file"); FileInputStream fis = new FileInputStream(file); }catch(Exception e){ System.out.println("Given file path is not found"); } } }
输出结果
Given file path is not found
发生运行时异常时您可以处理运行时异常并避免异常终止,但是Java中没有针对运行时异常的特定修复程序,具体取决于异常的类型,您需要更改代码。
示例
public class ExceptionExample { public static void main(String[] args) { //创建一个大小为5的整数数组 int inpuArray[] = new int[5]; //填充数组 inpuArray[0] = 41; inpuArray[1] = 98; inpuArray[2] = 43; inpuArray[3] = 26; inpuArray[4] = 79; //访问索引大于数组的大小 System.out.println( inpuArray[3]); } }
输出结果
26