开始使用免费开始使用

在真实示例中使用 finally

Finally 代码块通常用于关闭并清理正在使用的资源,例如数据库或文件——无论是正常流程还是发生了异常。

在这里,您将通过方法调用来模拟打开文件、向文件写入文本以及关闭文件。您将使用 finally 来关闭这个模拟文件,无论在此过程中是否发生异常。

本练习是课程的一部分

Java 的数据类型与异常

查看课程

练习说明

  • 在会打开文件并向文件写入内容的工作代码周围开始一个 try 代码块。
  • 捕获在打开模拟文件或向其写入文本时可能发生的「任何」异常。
  • 添加一个 finally 代码块来关闭这个模拟文件;无论程序正常运行,还是在打开或写入文件时发生异常,都会执行它。

交互式实操练习

通过完成这段示例代码来试试这个练习。

public class FinallyCleanup {

	public static void main(String[] args) {
		String[] words = { "Lorem", "ipsum", "dolor", "sit", "amet" };
		// Open a try block
		____ {
			open();
			for (int i = 0; i <= words.length; i++) {
				writeToFile(words[i]);
			}
		// Catch any possible exception
		} ____ (____ ____) {
			System.out.println("Problem writing words to file");
		// Add a finally block to close the file
		} ____ {
			close();
		}
	}

	public static void open() {
		System.out.println("Our file is open");
	}

	public static void close() {
		System.out.println("Our file is closed");
	}

	public static void writeToFile(String text) {
		System.out.println(text + " has been written to the file");
	}
}
编辑并运行代码