Java编程中Checked与Unchecked异常。
检查异常
受检查的异常 是在编译时发生的异常,这些也称为编译时异常。这些异常不能在编译时简单地忽略。程序员应注意(处理)这些异常。
当发生检查/编译时异常时,您可以使用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");
}
}
}输出结果
Hello Given file path is not found
未经检查的异常
运行时异常或未经检查的异常是在执行时发生的异常。其中包括编程错误,例如逻辑错误或API使用不当。编译时将忽略运行时异常。
IndexOutOfBoundsException,ArithmeticException,ArrayStoreException和ClassCastException是运行时异常的示例。
示例
在下面的Java程序中,我们有一个大小为5的数组,并且试图访问第6个元素,这将生成ArrayIndexOutOfBoundsException。
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[6]);
}
}输出结果
运行时异常
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 6 at July_set2.ExceptionExample.main(ExceptionExample.java:14)