Java 예외(exeception) 종류 (일부)
출처 : docs.oracle.com/javase/8/docs/api/
번역 : 파파고 98% + 나 2%
주의 : 모든 예외가 있는 게 아닙니다. 추후에 추가하겠습니다><
이 글도 참고해 보세요👉 blog.naver.com/eyeballss/221183717598
예외 이름 |
종류 |
설명 |
비고 |
Exception |
수퍼클래스 |
모든 예외 클래스들의 부모 클래스 |
|
CloneNotSupportedException |
일반 예외 |
객체를 복제하기 위해 clone() 메소드가 호출됐지만 해당 객체가 clonable 인터페이스를 구현하지 않았을 때. |
|
InterruptedException |
일반 예외 |
스레드가 일을 끝마치지 못했는데 waiting, sleeping, otherwise occupied(기타 점유)에서 깨어나지 못하거나 interrupt()로 종료되었을 때 |
|
ReflectiveOperationException |
수퍼클래스 |
핵심 리플렉션(투영) 기능 중 투영하는 작업에 의해 발생하는 예외들의 보편적인 수퍼클래스. |
|
ClassNotFoundException |
일반 예외 |
어플리케이션이 문자열(이름)로 클래스를 로드하려고 하지만 해당 문자열을 이름으로 가진 클래스를 찾을 수 없을 때. |
ReflectiveOperationException 상속 |
IllegalAccessException |
일반 예외 |
어플리케이션이 반사적으로 배열이 아닌 인스턴스를 생성하거나, 필드를 set/get 하거나, 메소드를 호출하려고 하지만 현재 실행중인 메소드는 지정된 클래스, 필드, 메소드 또는 생성자의 정의에 접근할 수 없을 때. |
ReflectiveOperationException 상속 |
InstantiationException |
일반 예외 |
다양한 이유로 클래스를 인스턴스화 할 수 없을 때 발생. |
ReflectiveOperationException 상속 |
NoSuchFieldException |
일반 예외 |
특정 클래스가 지정된 이름의 필드를 가지고 있지 않을 때 |
ReflectiveOperationException 상속 |
NoSuchMethodException |
일반 예외 |
특정 메소드를 찾을 수 없을 때 |
ReflectiveOperationException 상속 |
RuntimeException |
수퍼클래스 |
JVM의 정상 작동 중에 발생될 수 있는 예외 중 컴파일러가 체크하지 않는 예외들의 수퍼클래스. |
|
IllegalArgumentException |
실행 예외 |
부적절한 매개변수값(=실인수, argument)이 메소드를 통과했을 경우 |
|
IllegalThreadStateException |
실행 예외 |
스레드가 요청된 작업을 처리하기에 적합한 상태가 아닐 때 |
IllegalArgumentException 상속 |
NumberFormatException |
실행 예외 |
어플리케이션이 문자열을 숫자형으로 변환하려고 시도했지만, 숫자로 변환될 수 없는 문자가 포함되어 있을 때. |
IllegalArgumentException 상속 |
IndexOutOfBoundsException |
실행 예외 |
배열, 문자열, 벡터 같은 특정 객체의 인덱스가 범위를 벗어났을 때 |
|
ArrayIndexOutOfBoundsException |
실행 예외 |
잘못된 인덱스로 배열에 접근했을 때. 인덱스가 음수이거나 배열 크기보다 크거나 같을 때. |
IndexOutOfBoundsException 상속 |
StringIndexOutOfBoundsException |
실행 예외 |
음수이거나, String의 size보다 큰 인덱스를 사용하려고 할 때 |
IndexOutOfBoundsException 상속 |
ArithmeticException |
실행 예외 |
예외적인 산술 조건이 발생했을 때. |
|
ArrayStoreException |
실행 예외 |
잘못된 타입의 객체를 배열에 저장하려고 시도했을 때. |
|
ClassCastException |
실행 예외 |
객체를 인스턴스가 아닌 하위 클래스로 캐스팅하려고 했을 때. |
|
EnumConstantNotPresentException |
실행 예외 |
어플리케이션이 열거상수에 접근하려고 했지만 열거객체에 해당 이름의 상수가 없을 때. |
|
IllegalMonitorStateException |
실행 예외 |
스레드가 지정된 모니터를 소유하지 않고 객체의 모니터에서 대기 중임을 알리거나, 객체의 모니터에서 대기 중인 다른 스레드를 알리기 위해 발생 |
|
IllegalStateException |
실행 예외 |
메소드가 부적절한 타이밍에 호출되었음을 알리는 예외. 즉, 자바 환경이나 자바 어플리케이션이 요청된 작업을 수행할 수 없는 상태일 때. |
|
NegativeArraySizeException |
실행 예외 |
음수 크기를 가진 배열을 만들려고 할 때 |
|
NullPointerException |
실행 예외 |
어플리케이션이 null을 사용하려고 할 때. |
|
SecurityException |
실행 예외 |
보안이 위반됐을 때 보안관리자가 알리기 위해 throw |
|
TypeNotPresentException |
실행 예외 |
어플리케이션이 데이터 타입 이름을 나타내는 문자열을 사용하여 데이터 타입에 접근하려고 하지만, 지정된 이름을 가진 데이터 타입에 대한 정의를 찾을 수 없을 때 |
|
UnsupportedOperationException |
실행 예외 |
요청된 작업(메소드 등)이 지원되지 않는 작업일 때 |
|