- 예외(Exception)는 에러(error)의 일종
1. Compile error : error
- 문법 오류등, 컴파일이 진행 X, 실행 X
2. Exception : 예외
- 실행 중 발생하는 error
- 예외(Exception)이 발생하면 그 즉시 프로그램이 강제 종료
3. 예외처리의 목적
- 비 정상적인 종료를 막고 정상적으로 프로그램이 실행 될 수 있도록 개발자가 관리(처리)
4. Exception이 발생하면 Java(JVM)에서 예외에 맞는 예외 객체를 생성
5. Exception 도 class로 정의 되어 있음
Throwable <- Exception <- 하위클래스들 <- 하위클래스들
예외처리 방법
1. try ~ catch
- 하나의 try에 여러개의 catch 가능
- catch에 밑으로 가면서 더 넓은 부모타입을 선언
- try의 {} catch의 {} 에 선언된 지역변수
try {
예외가 발생할 수 있는 구문들 작성
}catch(발생한 예외 객체 타입 선언){
예외처리 구문
}catch(발생한 예외 객체 타입 선언){
예외처리 구문
}catch(발생한 예외 객체 타입 선언){
예외처리 구문
}finally {
예외가 발생하든 안하든 무조건 실행 하는 영역
}
2. Throws
- 예외처리를 자기가 하는 것이 아니라 메서드를 호출한 쪽으로 위임
메서드 선언부 () throws 예외객체타입명1, 예외객체타입명2, ... {}
사용자 정의 예외 클래스
- 개발자가 정의하는 예외 클래스
1. 예외 클래스 선언
- 예외 클래스 선언하고 Exception 클래스 상속
예외클래스명 extends Exception{
//기본생성자
//매개변수 있는 생성자
public 클래스명(String message){
super(message);
}
}
2. 사용자 정의 클래스 사용
예외 조건을 만들고
throw new 예외클래스명("message");