[java] 클래스와 객체를 사용하여 예외 처리를 하는 방법에 대해 설명해주세요.
예외 처리는 프로그램 실행 중에 발생할 수 있는 예상치 못한 상황에 대처하는 것입니다. Java에서는 클래스와 객체를 사용하여 예외를 처리할 수 있습니다. 이러한 방법은 코드의 가독성과 유지 보수성을 향상시키는 데 도움이 됩니다.
- 예외 클래스 정의하기
- 예외를 처리하기 위해 먼저 예외 클래스를 정의해야 합니다. 예외 클래스는
Exception
클래스를 상속받아서 만들 수 있습니다. 예를 들어, 사용자가 잘못된 입력을 할 때 발생하는InvalidInputException
클래스를 만들 수 있습니다.
- 예외를 처리하기 위해 먼저 예외 클래스를 정의해야 합니다. 예외 클래스는
public class InvalidInputException extends Exception {
public InvalidInputException(String message) {
super(message);
}
}
- 예외 발생 시키기
- 예외가 발생할 수 있는 상황에서
throw
키워드를 사용하여 예외를 발생시킬 수 있습니다. 예를 들어, 사용자로부터 입력을 받고, 입력 값이 특정 조건을 만족하지 않을 경우 예외를 발생시킬 수 있습니다.
- 예외가 발생할 수 있는 상황에서
public class Example {
public void processInput(int value) throws InvalidInputException {
if (value < 0) {
throw new InvalidInputException("입력 값은 0보다 작을 수 없습니다.");
}
}
}
- 예외 처리하기
- 예외가 발생할 수 있는 코드를 호출하는 쪽에서는
try-catch
블록을 사용하여 예외를 처리할 수 있습니다. 예외가 발생하면 해당 예외에 대한 적절한 처리를 할 수 있습니다.
- 예외가 발생할 수 있는 코드를 호출하는 쪽에서는
public class Main {
public static void main(String[] args) {
Example example = new Example();
try {
example.processInput(-1);
} catch (InvalidInputException e) {
System.out.println(e.getMessage());
}
}
}
위의 예제에서는 processInput()
메서드에서 InvalidInputException
을 발생시킬 수 있습니다. main()
메서드에서는 processInput()
메서드를 호출하고, 발생한 예외를 catch
블록에서 처리하고 있습니다.
예외 처리를 위해 클래스와 객체를 사용하는 것은 코드의 가독성을 높이고 유지 보수를 쉽게 할 수 있는 장점이 있습니다. 또한 예외 처리를 통해 프로그램이 예상치 못한 상황에서도 안전하게 동작할 수 있습니다.
참고 자료: