[Java 활용] 2.3 프로그램 방식으로 예외를 던지는 throw 문

Java 언어에서는 프로그램 동작 중에 개발자가 원하는 조건을 만족하지 않아 더 이상의 코드 진행을 하지 못하는 상황이 발생할 때 예외를 던지는 throws 문을 제공하고 있습니다.

예외를 던질 수 있는 메서드 throws 예외 클래스{

    if(예외가 발생){

        throws 예외 개체;

    }

정상적인 상황의 코드

}

다음은 Fibonacci 수열의 n항을 구하는 코드에 양수 항이 아니면 예외를 던져서 이를 처리하는 코드입니다.

▷ 소스 2.5 throw 문 사용 예

//throw 문 사용 예
public class Program {
	public static void main(String[] args){
		try{
			int value = Fibonacci(3);
			System.out.println("Fibbonacci(3)="+value);
			value = Fibonacci(-2);
			System.out.println("Fibbonacci(-2)="+value);
		}
		catch(Exception ex){
			System.out.println("예외 발생");
			System.out.println(ex.toString());
		}		
	}
	static int Fibonacci(int n) throws Exception{
		if(n<=0){
			throw new Exception("요청 항은 양수여야 합니다.");
		}
		if((n==1)||(n==2)){
			return 1;
		}
		return Fibonacci(n-1)+Fibonacci(n-2);
	}	
}

▷ 소스 2.5 실행 결과

예외 발생
java.lang.Exception: 요청 항은 양수여야 합니다.