:: ADVANCE ::

[Java] 예외 처리 본문

language/Java

[Java] 예외 처리

KSJ14 2015. 3. 19. 02:13
반응형

예외(Exception)이 발생한 메소드를 호출 한 곳으로 예외 객체를 넘기는 방법 (throws)


자바의 예외 처리 방법은 예외가 발생한 지점에서 try-catch 또는 try-catch-finally 블록을 이용하여 직접 처리하지 않아도 예외가 발생한 메소드를 호출한 지점으로 예외를 전달하여 처리하는 방법이 있다.


이때 사용하는 예약어가 throws 이다.


[modifiers] returnType name([argType argName, ...]) [throws exceptionName1, exceptionName2,...]


 

public class ExceptionTest {

    static void callDriver() throws ClassNotFoundException{
        Class.forName("oracle.jdbc.driver.OracleDriver");
        System.out.println("완료");
    }
    
    public static void main(String args[]){
        
        try{
            
            callDriver();
        
        }catch(ClassNotFoundException e){
            System.out.println("클래스를 찾을 수 없습니다.");
        }catch(Exception e){
            System.out.println(e.getMessage());
        }finally{
            System.out.println("시스템 종료.");
        }
        
    }
}




- main 함수에서 callDriver() 함수를 실행시킨다.

- callDriver() 함수에서는 "oracle.jdbc.driver.OracleDriver" 클래스를 가져온다.

- 해당 클래스를 찾지 못하면 ClassNotFoundException이 발생하는데, callDriver()에서는 throws ClassNotFoundException처리로 호출한 main 함수로 예외를 넘긴다.

- main에서는 ClassNotFoundException을 받아 catch 문에서 잡아서 "클래스를 찾을 수 없습니다." 메시지를 출력한다.

- 마지막으로 finally가 실행되며 "시스템 종료" 를 출력한다.




[참고] http://hyeonstorage.tistory.com/203

반응형

'language > Java' 카테고리의 다른 글

[Java] extends와 implements  (0) 2015.08.31
[Java] final  (0) 2015.08.29
[JAR] JAR파일  (0) 2015.08.24
Comments