Replies: 3 comments
-
#172 해당 아이템을 다뤄보면서 느낀 점과 닮아 있는 것 같습니다. 어찌보면 표준 예외를 사용하라는 의미는 설계자가 그만큼 고민을 많이 했다는 반증이 아닐까 생각해봅니다. 만약 앞으로 누군가 커스텀 예외 쓸데 없이 하고 있는 모습이 보이면 |
Beta Was this translation helpful? Give feedback.
-
프로젝트를 하면서 예외처리할 경우가 많은데 해당 예외에 적합한 표준예외를 먼저 찾아봤어야 했는데 막무가내로 커스텀 예외 클래스를 만들었었는데, 반성하게 되는 주제입니다. 해당 주제와는 다르지만 어쩔 수 없이 커스텀 예외 클래스를 만들게 되고 그 수가 늘게 되면 관리하기 불편해지게 됩니다. 혹시 @corock 님은 어떻게 관리하시는지 혹은 어떤 방법이 괜찮은지 하신다면 공유해주시면 감사하겠습니다. |
Beta Was this translation helpful? Give feedback.
-
표준 예외를 사용하라 !!! |
Beta Was this translation helpful? Give feedback.
-
표준 예외를 사용하면 좋은 점
자주 재사용하는 예외 클래스 유형
IllegalArgumentException
IllegalStateException
NullPointerException
IndexOutOfBoundsException
비교적 유명하지 않으나 재사용 시 유용한 예외 클래스 유형
ConcurrentModificationException
UnsupportedOperationException
List
구현체에 대고 누군가remove
메서드 호출 시 사용java.lang
패키지에 있는 예외 소개ArithmeticException
ArrayIndexOutOfBoundsException
ArrayStoreException
ClassCastException
ClassNotFoundException
CloneNotSupportedException
EnumConstantNotPresentException
IllegalAccessException
IllegalArgumentException
IllegalCallerException
IllegalMonitorStateException
IllegalStateException
IllegalThreadStateException
IndexOutOfBoundsException
InstantiationException
InterruptedException
LayerInstantiationException
NegativeArraySizeException
NoSuchFieldException
NoSuchMethodException
NullPointerException
NumberFormatException
ReflectiveOperationException
RuntimeException
SecurityException
StringIndexOutOfBoundsException
TypeNotPresentException
UnsupportedOperationException
주의사항
Exception
,RuntimeException
,Throwable
,Error
는 추상 클래스라고 생각하고, 직접 재사용하지 말 것extend
)해도 좋으나, 예외는 직렬화할 수 있다는 것에 주의(12장)회고
해당 아이템을 왜 언급했을까?
So What?
Beta Was this translation helpful? Give feedback.
All reactions