====== Java Exception ====== * [[http://www.tutorialspoint.com/java/java_builtin_exceptions.htm|Java - Built-in Exceptions]] * [[java:problem|problem]] ===== Checked Exception ===== 가능하면 사용하지 말 것. * [[http://java.dzone.com/articles/throwing-undeclared-checked|Throwing Undeclared Checked Exceptions | Javalobby]] * [[http://www.gamlor.info/wordpress/?p=1020|Throwing Checked Exceptions Like Unchecked Exceptions in Java |Checked Exception을 RuntimeException 처럼 던지는 방법]] public class ExceptionThrower { private ExceptionThrower() {} public static void spit(final Throwable throwable) { // 아래 타입 정보는 컴파일 상태에서는 지워진다. ExceptionThrower.throwWithoutCheck(throwable); } @SuppressWarnings("unchecked") private static void throwWithoutCheck(Throwable throwable) throws T { // 아래 Type Casting 정보는 Java Generic의 특성상 컴파일시 정보가 사라지므로 // 실제 캐스팅은 발생하지 않는다. throw (T) throwable; } } ExceptionThrower.spit(new IOException("테스트 Checked 예외"));