자바에서 Exception 핸들링할 때....

vudghkzm의 이미지

자바 API 문서에 보면, 예를 들어 자바 2 SE 1.5에서 java.util.Properties 클래스의 load() 메쏘를 보면요.

load() 의 시그니쳐는
public void load( InputStream inStream ) throw IOException
입니다.
그리고 API 문서에 Throws: 항목에는 IOException 과 IllegalThreadStateException 이 나와있습니다.

이 경우에는 IOException 만 catch 해 주면 되는 것인가요? 아니면 IllegalThreadStateException 도 catch 해줘야 되는 것인가요?

nthroot의 이미지

http://www.javastudy.co.kr/docs/yopark/chap04/chap04.html
상속에 따라 하나가 다 잡을수도있고 따로 잡을수 있습니다.
위 문서 윗부분에 보시면 설명이 있습니다.

------식은이 처------
길이 끝나는 저기엔 아무 것도 없어요. 희망이고 나발이고 아무 것도 없어.

creativeidler의 이미지

메쏘드 시그너처를 따르는 게 맞습니다. IllegalThreadStateException은 RuntimeException이라 꼭 잡아야하는 것은 아닙니다.