异常处理之throws
不是在什么时候try catch 都有异常处理权限的,也就是说有可能出现的异常是我们处理不了的,这个时候就有了java提供的 throws 的处理方案
格式:
throws 异常类名;
注意:这个格式跟在方法括号的后面
编译时一异常必须要进行处理:两种方案 try… catch…或者throws,如果用throws这种方案,将来谁调用谁来处理异常
运行异常可以不处理,出现问题回来修改代码
/**
* @author Wrry
* @data 2020
* 异常处理之throws处理
*/
public class YiChhang04 {
public static void main(String[] args) {
System.out.println("开始");
// method();
try {
method01();
} catch (ParseException e) {
e.printStackTrace();
}
System.out.println("结束");
}
//编译时异常演示类,在用throws处理的时候不是真正的处理,而是暂缓处理,
// 谁调用的这个方法谁还需要利用try catch 方法处理的
public static void method01() throws ParseException {
String sj = "2020-08-18";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date d = sdf.parse(sj);//Unhandled exception: java.text.ParseException
System.out.println(d);
}
//运行时异常
public static void method() throws ArrayIndexOutOfBoundsException {
int[] arr = {11, 22, 33, 44};
System.out.println(arr[4]); //ArrayIndexOutOfBoundsException
}
}