java try-with-resources는 자동으로 리소스를 닫습니다.

try-with-resourcesAutoCloseable인터페이스를 구현하는 리소스를 자동으로 닫는 데 사용되는 Java 7에 도입된 구문입니다 . 코드에서 리소스를 닫는 작업을 단순화하고 리소스가 올바르게 해제되도록 보장하며 메모리 누수를 방지할 수 있습니다.

사용 구문은 try-with-resources다음과 같습니다.

try (资源的声明和初始化) {
    
    
    // 使用资源进行操作
} catch (异常类型 变量名) {
    
    
    // 异常处理
}

try닫아야 할 리소스 개체를 뒤에 괄호 안에 선언하고 초기화합니다 . 리소스 개체는 리소스를 닫는 방법을 AutoCloseable정의하는 인터페이스를 구현해야 합니다.close()

리소스 사용 시 예외 발생 여부에 관계없이 리소스 해제를 보장하기 위해 리소스를 닫는 메서드가 try-with-resources자동으로 호출됩니다 .close()

샘플 코드:

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;

try (BufferedReader br = new BufferedReader(new FileReader("file.txt"))) {
    
    
    String line;
    while ((line = br.readLine()) != null) {
    
    
        System.out.println(line);
    }
} catch (IOException e) {
    
    
    // 异常处理
}

위의 예에서는 try-with-resources파일이 열리고 BufferedReader개체가 생성된 다음 해당 개체를 사용하여 파일 내용을 읽습니다. 예외 발생 여부에 관계없이 블록 종료 후 수동 호출 없이 자동으로 BufferedReader닫힙니다 .trybr.close()

을 사용하면 try-with-resources코드의 가독성과 단순성이 향상되고 지루한 오류 처리 작업이 줄어듭니다. 동시에 사용 후 리소스가 제대로 닫히도록 보장하여 리소스 누출 문제를 방지합니다.

Guess you like

Origin blog.csdn.net/drhnb/article/details/132187423