예외 떠넘기기
- 메소드 내부에서 예외 발생 시 throws 키워드 이용해 메소드를 호출한 곳으로 예외 떠넘기기
- throws는 메소드 선언부 끝에 작성. 떠넘길 예외 클래스를 쉼표로 구분해서 나열
출처, 이것이 자바다
package ch11.sec05;
/*
* Class.forName("java.lang.String2") : 예외가 발생할수 있는 메소드
* 1)예외전가(예외 떠넘기기) : throws Exception
* 2)예외처리 : try~catch구문
*/
public class ThrowsExample1 {
public static void main(String[] args) {
//예외처리
try {
findClass();
}catch(ClassNotFoundException e) {
System.out.println("예외 처리: " + e.toString());
}
}
//예외 떠넘기기
public static void findClass() throws ClassNotFoundException {
Class.forName("java.lang.String2");
}
}
- 나열할 예외 클래스가 많으면 throws Exception 또는 throws Throwable 만으로 모든 예외 떠넘기기
출처, 이것이 자바다
package ch11.sec05;
/*
* Class.forName("java.lang.String2") : 예외가 발생할수 있는 메소드
* 1)예외전가(예외 떠넘기기) : throws Exception
* 2)예외처리 : try~catch구문
*/
public class ThrowsExample2 {
//예외 떠넘기기 - JVM에게 예외를 넘겨, 최종적으로 처리하게 된다.
public static void main(String[] args) throws Exception {
findClass();
}
//예외 떠넘기기
public static void findClass() throws ClassNotFoundException {
Class.forName("java.lang.String2");
}
}
'객체 지향 프로그래밍 - 예외 처리' 카테고리의 다른 글
사용자 정의 예외 (0) | 2023.01.26 |
---|---|
예외 종류에 따른 처리 (0) | 2023.01.26 |
예외와 예외 클래스, 예외 처리 코드 (0) | 2023.01.25 |