이전 포스팅에서 try catch 에 대해 다룬 포스팅이 있다.
자세한 내용은 아래 참고 포스팅을 참고하면 된다.
이번 포스팅에서는 예외 처리를 위해서 좀더 try catch throws throw 에 대해 알아볼 것이다.
예외 처리에 대한 내용 역시 참고 포스팅을 참고 바란다.
예외 처리 기법에는 크게 3가지가 있다.
1. try catch 를 통해 예외 처리
2. throw로 그냥 예외 발생 시키기
3. throws 키워드를 통해 예외 처리 위임
먼저 간단하게 설명이 될 부분에서는 2번 throw 로 그냥 예외 발생 경우는
if (true){
throw Exception();
}
이렇게 미리 만들어둔 예외나 기본적인 예외들을 발생 시키면 된다.
1, 3번에 대해서 차이는
3번의 throws의 예외를 던지는것, 즉 위임하는것이다. 처리하는것과는 다른 의미이다.
1번의 try catch 는 예외를 받아서 처리하는 것이다. 이럴 경우가 처리이다.
throws는 메서드에서 처리해야할 하나 이상의 예외를 메서드를 호출한 곳으로 던져버린다.
public void method(){ try { method2(); } catch ( ClassNotFoundException e){ //print ("여기"); } } public void method2() throws ClassNotFoundException { throw new ClassNotFoundException(); } |
만약 이런 코드가 있다고 할 경우 method2에서는 throw를 통해서 에러가 발생하였지만
throws로 잡혀있기에 상위 method2를 호출한 method 로 가서 catch 부분의 코드가 동작을 하게 된다.
여러 코드를 체계적으로 관리하고, checked 에러 , 예외를 좀더 명시적으로 관리하기 유리하다.
참고 포스팅
https://thenicesj.tistory.com/151
https://thenicesj.tistory.com/485
'IT > Java' 카테고리의 다른 글
[eclipse] springboot maven module project 구성하기 (16) | 2023.05.02 |
---|---|
module project란? (30) | 2023.05.01 |
String 기본 method (26) | 2023.04.29 |
문자열 합치기 방법(concat, StringBuilder, StringBuffer, + ) (23.04.26) (8) | 2023.04.28 |
SQL Builder 클래스 (36) | 2023.04.23 |
댓글