상세 컨텐츠

본문 제목

Java - IO, finnaly문 정리

개발/Java

by 뉴에이스 2018. 10. 2. 15:44

본문

 

1.7 버전부터 finally - close 부분의 비효율성을 개선
try ~ resource 지원, 자동 닫힘 지원 : try (객체 생성){} 시 try 문을 벗어난 후 자동으로 close 됨
조건 : 사용하는 클래스가 AutoCloseable을 상속해야 한다.
     : IO의 클래스는 전부 AutoClosable을 상속받은 상태임
 

소스

 

class MyClose implements AutoCloseable {
	public void close() throws Exception {
		System.out.println("MyClose 호출 테스트");
	}
}

 

public static void main(String[] args) {
	try (
			MyClose mc = new MyClose(); // AutoCloseable 클래스를 상속받지 않을 경우 오류 발생
			FileReader fr = new FileReader("data/lec13/Test01.java");
			FileWriter fw = new FileWriter("data/lec13/Test01Cp.java");
			) {
		System.out.println("try 블럭 실행함...");

	} catch (Exception e) {
		e.printStackTrace();
	}
	System.out.println("try 블럭 밖...");
}
 

결과

 

try 블럭 실행함...
MyClose 호출 테스트
try 블럭 밖...

 

'개발 > Java' 카테고리의 다른 글

Java - URL 정보 확인, URLConnection  (0) 2018.10.02
Java - InetAddress  (0) 2018.10.02
Java - IO, PrintWriter 사용  (0) 2018.10.02
Java - IO, File 클래스를 이용한 파일 복사  (0) 2018.10.02
Java - IO, InputStream, OutputStream  (0) 2018.10.02

관련글 더보기

댓글 영역