Java 07 printStackTrace( )와 getMessage( )

자바/8. 예외처리|2021. 4. 2. 17:53

예외가 발생하면, 예외 클래스의 객체가 생성하게 되고, 이 객체에는 예외정보(메서드)가 들어 있다.

그 중, 대표적인 printStackTrace()getMessage()가 있다.

 

printStackTrace( )

예외발생 당시의 호출스택(Call Stack)에 있었던 메서드의 정보와 예외 메시지를 화면에 출력한다.

*호출스택(Call Stack) 

getMessage( ) 

발생한 예외클래스의 인스턴스에 저장된 메시지를 얻을 수 있다.

 

package EX_8;

public class Ex8_5 {
 public static void main(String args[]) {
	 System.out.println(1);
	 System.out.println(2);
	 
	 try {
		System.out.println(3);
		System.out.println(0/0); //예외발생!!
		System.out.println(4); // 실행되지 않는다.
	} catch (ArithmeticException ae) {
		// TODO: handle exception
		ae.printStackTrace(); // 참조변수 ae를 통해, 생성된 ArithmeticException 객체에 접근할수 있다.
		System.out.println("예외메시지 : " + ae.getMessage());
	} //try-catch의 끝 catch{ } 가 참조변수 ae의 유효범위(Scope) 이다.
	 System.out.println(6);
	 //main메서드의 끝
 }
}


댓글()
구독