[Java] 예외처리
2022. 5. 17. 00:45
참고 : 명품 JAVA Programming (개정 4판) 저자 황기태, 김효수
- 예외(Exception)
- 오동작이나 결과에 악영향을 미칠 수 있는 실행 중 발생 한 오류
- 실행 중 예외가 발생하는 경우
- 정수를 0으로 나누는 경우
- 배열의 크기보다 큰 인덱스로 배열의 원소를 접근하는 경우
- 존재하지 않는 파일을 읽으려고 하는 경우
- 정수 입력을 기다리는 코드가 실행되고 있을 때, 사용자가 문자를 입력한 경우
- 예외 처리(try~catch~finally)
- 개발자가 작성한 프로그램의 실행 중에 예"외가 발생하면 이에 대응하는 것
- try~catch~finally
try {
예외가 발생할 가능성이 있는 실행문(try블록)
}
catch {
예외 처리문(catch 블록)
}
finally (생략가능) {
예외 발생 여부와 상관없이 무조건 실행되는 문장 (finally 블록)
}
- 자바의 예외 클래스
- 자바 플랫폼에서 제공하는 예외 클래스를 이용하여 예외 발생을 탐지
예외 타입(예외 클래스) | 예외 발생 경우 | 패키지 |
ArithmeticException | 정수를 0으로 나눌 때 발생 | java.lang |
NullPointerException | null 레퍼런스를 참조할 때 발생 | java.lang |
ClassCastException | 변환할 수 없는 타입으로 객체를 변환할 때 생성 |
java.lang |
OutOfMemoryException | 메모리가 부족한 경우 발생 | java.lang |
ArrayIndexOutOfBoundsException | 배열의 범위를 벗어난 접근 시 발생 | java.lang |
IllegalArgumentException | 잘못된 인자 전달 시 발생 | java.lang |
IOException | 입출력 동작 실패 또는 인터럽트 시 발생 |
java.io |
NumberFormatException | 문자열이 나타내는 숫자와 일치하지 않는 타입의 숫자로 변환 시 발생 |
java.lang |
InputMismatchException | Scanner 클래스의 nextInt()를 호출하여 정수로 입력받고자 하였지만, 사용자가 문자를 입력한 경우 | java.util |
728x90
'Study > Java' 카테고리의 다른 글
[Java] 상속과 인터페이스 (0) | 2022.06.04 |
---|---|
[Java] 클래스와 객체 (0) | 2022.05.27 |
[Java] 배열 (0) | 2022.05.17 |
[Java] 반복문 (0) | 2022.05.17 |
[Java] 자바의 기초(2) (0) | 2022.05.12 |