IOException | 입출력 동작 실패 또는 인터럽트 시 발생 |
---|---|
SQLException | 데이터베이스 연동 과정에서 문제가 발생했을 때 |
NumberFormatException | 숫자 형식이 아닌 데이터를 숫자로 변경하려고 했을 때 |
ArrayIndexOutOfBoundsException | 배열과 유사한 자료구조에서 인덱스의 범위를 벗어나는 경우/존재하지 않는 배열 공간을 사용하려고 했을 때 |
ArithmeticException | 정수를 0으로 나눌때 발생 |
ClassCastException | 변환할 수 없는 타입으로 객체를 변환할 때 발생 |
NullPointerException | 주소가 할당되지 않은 참조변수를 사용하려 했을 때 |
ClassNotFoundException | 존재하지 않는 클래스를 사용하려고 했을 때 |
UnsupportedOperationException | 객체가 메소드를 지원하지 않는 경우 발생 |
InterruptedException | Thread.sleep(), join(). Object의 wait()로 non-runnable 상태인 thread를 Runnable하게 만들 수 있도록 사용할 수 있음 |
FileNotFoundException | 참조하는 파일이 지정된 위치에 존재하지 않는 경우 |
예외처리(try ~ catch) : 사용자가 뭘 잘못했는지 알려주는 것
try{
예외가 발생할 수 있는 코드 부분
}catch(처리할 예외 타입e){
try블록 안에서 예외가 발생했을 때 예외를 처리하는 부분
}
예외가 여러개? → 다중 catch문
finally 블록
throws 예약어
throw 예약어