早上好, 为什么在视频课程中,一个人没有使用try-catch,如果我不使用try-catch,我在createnewFile(),FileWriter等上出现错误IOException。 也许这很容易,我来自c ++,这对我来说是个大问题。
那是我的代码: PS。抱歉“最好的英语”
public static void main(String[] args) {
System.out.println("Hello World");
File file1 = new File("temp.txt");
if(!file1.exists()) {
System.out.println("Creating file...");
try
{
file1.createNewFile();
}
catch (IOException e)
{
e.printStackTrace();
}
}
try
{
FileWriter fw = new FileWriter(file1);
BufferedWriter out = new BufferedWriter(fw);
out.write("aString");
out.flush();
out.close();
FileReader fr = new FileReader(file1);
BufferedReader in = new BufferedReader(fr);
while(in.ready()) {
System.out.println(in.readLine());
}
}
catch (IOException e)
{
e.printStackTrace();
}
}
答案 0 :(得分:1)
我们使用try-catch块来维护代码的执行流程。 如果发生异常,它将捕获块,并通过e.printStackTrace向我们提供信息,说明发生异常的原因,我们可以使用逻辑在这里进行处理。 如果我们不使用try-catch,那么代码流将停留在发生异常的地方。 这就是为什么我们使用try-catch块。
答案 1 :(得分:0)
Java要求您在代码中处理已检查的异常,方法是指定您的方法可以引发异常,或者使用try-catch块对其进行处理。如果您在调用可能引发检查异常的方法(例如IOException
)时未执行上述两项操作之一,则编译器将产生错误。
您可以在这里了解Java中的异常:Lesson: Exceptions(Oracle Java教程)。