当前位置:  开发笔记 > 编程语言 > 正文

何时抛出FileNotFoundException

如何解决《何时抛出FileNotFoundException》经验,为你挑选了2个好方法。

我调用了方法中命名readFile()main方法,readFile()抛出FileNotFoundException,但main没有,如下所示:

public static void main(String[] args){
    readFile();
}

public static void readFile() throws FileNotFoundException{
    Scanner input = new Scanner(new File("file.txt"));
    ...
}

当我编译程序时,我readFile()main方法中遇到了错误.似乎我需要在标题中抛出一个异常main.我为什么要抛出的异常的两个头mainreadFile()



1> Daniel Willi..:

Java对其例外有一些争议.它有两类例外.选中并取消选中.从RuntimeException或Error扩展的任何异常都是未选中的,不需要在方法签名中捕获或显式声明为throwable.

但是,FileNotFound是一个经过检查的异常,必须在方法签名中捕获或声明为throwable.

基本思想是,已检查的异常是您可以从中恢复的异常,而未经检查的异常是来自编程中最可能无法恢复的异常的异常.

你可以阅读所有关于它在这里:https://docs.oracle.com/javase/tutorial/essential/exceptions/runtime.html



2> Drew Kennedy..:

throws关键字视为承诺; 你说你现在不会抓住异常,但你会在调用语句中捕获它.

您在readFile方法中当前拥有的代码似乎完全有效,但您需要将调用语句包装在一个try-catch适当的处理异常中.

推荐阅读
N个小灰流_701
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有