throws关键字:处理异常的第一种方式,交给别人处理
作用:
当方法内部抛出异常时,我们就必须处理这个对象,
可以使用throws处理异常对象
会把异常对象抛出给方法的调用者处理(自己不处理,给别人处理)
最终交给jvm处理–>中断
使用方式:
在方法声明时使用
修饰符 返回值类型 方法(参数列表) throws xxxException…{
}
public class Demo05throws {
//public static void main(String[] args) throws FileNotFoundException,IOException{
public static void main(String[] args) throws Exception{
readFile("C:\\\\a.txt");
//readFile("D:\\\\a.txt");
readFile("C:\\\\a");
}
/*
定义一个方法,对传递的文件路径进行合法性判断
如果路径不是“C:\\a.txt”,那么抛出文件找不到异常对象,告知方法的调用者
*/
public static void readFile(String fileName) throws FileNotFoundException,IOException{
/*
如果传递的路径不是.txt结尾
那么我们就抛出IO异常对象,告知调用者,文件的后缀名不对
*/
if(!fileName.endsWith(".txt")){
throw new IOException("文件的后缀名不对");
}
/*
如果路径不是“C:\\a.txt”,那么抛出文件找不到异常对象,告知方法的调用者
*/
if(!fileName.equals("C:\\\\a.txt")){
//注意:FileNotFoundException是编译异常,就必须处理这个异常
//使用throws继续抛出,让方法的调用者处理
throw new FileNotFoundException("文件未找到");
}
System.out.println("路径没有问题,读取文件");
}
}