본문 바로가기

명사 美 비격식 (무리 중에서) 아주 뛰어난[눈에 띄는] 사람[것]

JAVA

throws Exception 메서드에 예외선언하기, try-catch문의 다른 표현방법

기존의 언어들에서 메서드에 예외선언을 하지않아 경험이 많지않고서야

어떤상황에 어떤 종류의 예외가 발생할 가능성이 있는지 충분히 예측하기가 어려웠다.

이때 메서드를 작성할때 메서드내에 발생가능성 예외를 선언부에 명시해 프로그래머들의 짐을 덜어줄 수 있다.

import java.io.FileNotFoundException;

public class MethodWithException {
    public static void main(String[] args) {
        try {
            // 예외를 던질 수 있는 메서드 호출
            processFile("nonexistent-file.txt");
        } catch (FileNotFoundException e) {
            System.err.println("파일을 찾을 수 없습니다.");
            e.printStackTrace();
        }
    }

    // 파일을 처리하는 메서드
    public static void processFile(String fileName) throws FileNotFoundException {
        // 파일을 열고 처리하는 로직
        // 여기에서는 파일이 존재하지 않으면 FileNotFoundException을 발생시킴
        throw new FileNotFoundException("파일을 찾을 수 없습니다: " + fileName);
    }
}
public class MethodWithGenericException {
    public static void main(String[] args) {
        try {
            // 예외를 던질 수 있는 메서드 호출
            processFile("nonexistent-file.txt");
        } catch (Exception e) {
            System.err.println("예외가 발생했습니다: " + e.getMessage());
            e.printStackTrace();
        }
    }

    // 파일을 처리하는 메서드
    public static void processFile(String fileName) throws Exception {
        // 파일을 열고 처리하는 로직
        // 여기에서는 간단히 Exception을 발생시킴
        throw new Exception("파일 처리 중 예외 발생: " + fileName);
    }
}