Ⅱ. 예외(Exception)의 전가(throws)
1. 예외의 전가(throws)
- 예외 처리를 자신이 호출된 지점으로 전가 (이 경우 예외처리는 전가받은 상위위치에서 처리)
→ 즉, 예외가 발생하는 지점에서 예외 처리하지 않고, 바깥으로 넘김
- 메소드이름(…) throws 예외클래스
// Example
package sample;
public class Main {
public static void methodA() throws Exception {
methodB(); // B가 A로 발생 예외를 전가함
}
public static void methodB() throws Exception {
methodC(); // C가 B로 발생 예외를 전가함
}
// throws : 발생 예외를 전가함
public static void methodC() throws Exception {
// 예외 객체를 생성
Exception e = new Exception();
throw e; // 여기에서 예외가 발생함
}
public static void main(String[] args) {
try { // A가 main으로 발생 예외를 전가함
methodA();
}
catch(Exception e) {
e.printStackTrace(); // 예외 전가를 추적함
}
}
}
'Programming Language > Java' 카테고리의 다른 글
스레드(Thread) - 1. Program vs. Process vs. Thread의 개념 (0) | 2022.07.15 |
---|---|
예외처리 - 3. 예외(Exception) 클래스 사용자 정의 (0) | 2022.07.14 |
예외처리 - 1. 예외(Exception) 및 예외 처리 (0) | 2022.07.14 |
이너클래스 - 3. 이너인터페이스(Inner interface) (0) | 2022.07.14 |
이너클래스 - 2. 익명이너클래스(Anonymous class) (0) | 2022.07.14 |