[아이템 70] 복구할 수 있는 상황에는 검사 예외를, 프로그래밍 오류에는 런타임 예외를 사용하라
Closed this issue · 6 comments
검사 예외란 단어는 정확히 무엇을 의미하는 걸까요?
-> 아 checked exception을 번역한 게 검사 예외 인것 같네요..
예외에 대해 한번 훝어보기 좋은 포스팅 : https://sjh836.tistory.com/122
p391 Exception, RuntimeException, Error를 상속하지 않는 throwable을 만들 수 있다..
어떤 걸 의미하는 걸까요?
최상위 클래스(throwable)만 받아서, 자신만의 예외를 만들어내는 것을 의미하는 걸까요?
p391 Exception, RuntimeException, Error를 상속하지 않는 throwable을 만들 수 있다..
어떤 걸 의미하는 걸까요?
최상위 클래스(throwable)만 받아서, 자신만의 예외를 만들어내는 것을 의미하는 걸까요?
제 생각에는 아마 그렇게 생각되는데, 혹시 어떤 의미인가요??
아래 방식과 같이 사용하는것이 아닐까요?
public class Example extends Throwable{
public Example() {
super("Throwable");
}
}
public class ee {
public void go() throws Example {
throw new Example();
}
}
public class Main {
public static void main(String[] args) {
ee e = new ee();
try {
e.go();
}catch (Example tr){
tr.getMessage();
}
}
}
p391 Exception, RuntimeException, Error를 상속하지 않는 throwable을 만들 수 있다..
어떤 걸 의미하는 걸까요?
최상위 클래스(throwable)만 받아서, 자신만의 예외를 만들어내는 것을 의미하는 걸까요?
저도 동일한 의미로 이해했습니다. 그리고 extends Throwable 을 절대로 하지 말라는 의미로 책을 읽었습니다.
실제로 사용을 해보니, 그냥 extends Throwable 을 하기만 해도, try/catch 구문을 강제하더군요.
그렇다하더라도, 구체적인 하위 Checked Exception 클래스를 찾아내어서 에러를 발생시키도록 하라고 이해했습니다.