예외 처리(Exception Handling)
프로그램의 정상적인 실행을 방해하는 조건이나 상태를 예외(Exception)라고 하며, 이러한 예외가 발생했을 때 개발자가 해당 문제에 대비해 작성해 놓은 처리 루틴을 수행하도록 하는 것을 예외 처리(Exception Handling)라고 한다. 예외가 발생했을 때 일반적인 루틴은 프로그램을 종료시키거나 로그를 남기도록 하는 것이다. 자바(Java)에는 예외 처리 기능이 내장되어 있다.
자바(Java)의 예외 처리
자바(Java)는 예외를 객체로 취급하기 때문에 예외와 관련된 클래스 java.lang 패키지에서 제공한다.
또한 try ~ catch 문을 이용해 예외를 처리할 수 있다.
try ~ catch 문
try{
예외가 발생할 가능성이 있는 코드
}
catch( 예외객체1 매개변수){
예외객체1에 해당하는 예외 발생 시 처리코드;
}
catch( 예외객체2 매개변수){
예외객체2에 해당하는 예외 발생 시 처리코드;
}
catch( 예외객체n 매개변수){
예외객체n에 해당하는 예외 발생 시 처리코드;
}
catch(Exception 매개변수){
예외객체1~n에 해당하지 않는 예외 발생 시 처리코드;
}
finally{
예외의 발생 여부와 관계없이 무조건 처리되는 코드;
}
자바(Java)의 주요 예외 객체
| 예외 객체 | 발생 원인 |
| ClassNotFoundException | 클래스를 찾기 못한 경우 |
| NoSuchMethodException | 메소드를 찾지 못한 경우 |
| FileNotFoundException | 파일을 찾지 못한 경우 |
| InterruptedException | 입. 출력 처리가 중단된 경우 |
| ArithmeticException | 0으로 나누는 등의 산술 연산에 대한 예외가 발생한 경우 |
| IlegalArgumentException | 잘못된 인자를 전달한 경우 |
| NumberFormatException | 숫자 형식으로 변환할 수 없는 문자열을 숫자 형식으로 변환한 경우 |
| ArrayIndexOutOfBoundsException | 배열의 범위를 벗어난 접근을 시도한 경우 |
| NegativeArraySizeException | 0보다 작은 값으로 배열의 크기를 지정한 경우 |
| NullPointerException | 존재하지 않는 객체를 참조한 경우 |
'JAVA > Theory' 카테고리의 다른 글
| 자바(Java)의 변수와 자료형 (0) | 2023.12.14 |
|---|---|
| [디자인패턴] MVC (0) | 2023.12.12 |
| 추상클래스(Abstract Class)와 인터페이스(Interface) (1) | 2023.12.07 |
| 오버로딩(Overloading)과 오버라이딩(Overriding) (0) | 2023.12.06 |
| 메서드(Method)와 함수(Function) (1) | 2023.12.06 |
댓글