java自動關閉資源

1.6和之前是這樣的,但這樣的缺點是finally中也可能報錯(如關閉流):java

BufferedReader br = null;
		try {
			br = new BufferedReader(new FileReader(""));
		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			if (br != null)
				br.close();
		}

1.7新增try-with-resources 語句:code

try (BufferedReader br = new BufferedReader(new FileReader(""))) {
			br.readLine();
		}

1.7中只要實現了AutoCloseable或Closeable接口的類或接口,均可以使用try-with-resource來實現異常處理和資源關閉。接口

public abstract class Reader implements Readable, Closeable

public interface Closeable extends AutoCloseable
相關文章
相關標籤/搜索