package chapter19;
/*
예외 처리
cf) 예외: 프로그램 실행 중 발생하는 비정상적인 상황
예외 종류: 체크 이외(컴파일 시점에 검사)/ 언체크 예외(런타임 시점에 발생)
+) 예외 클래스의 계층 구조
Throwable
> Error(시스템 레벨 오류)
> Exception
>>Checked
>>Unchecked
1. 예외 처리 구문
try-catch
finally
2. 기타 예외 처리 키워드
throws 키워드 - 메소드 선언부에 사용하여 예외를 호출한 메소드로 전파
*/
//public void someMethod() throws IOException{}
/*
throw 키워드 -예외 객체를 명시적으로 발생시키는데에 사용
*/
//throw new IOExeption("파일을 찾을 수 없습니다.");
// 3. 사용자 정의 예외
class CustomException extends Exception{
public CustomException(String message) {
super(message);
}
}
public class z_Exception {
public static void validate(int age) throws CustomException{
if(age<18) throw new CustomException("나이는 18세 이상이어야 합니다.");
}
public static void main(String[] args) {
try {
z_Exception.validate(17);
}
catch(CustomException e){
/*
1. printStackTrace();
: 예외가 발생했을 때 예외의 발생 경로와 관련된 스택트레이스를 출력하는 메소드
> 예외가 발생한 위치와 예외가 전파된 경로를 포함하여 상세 정보를 출력
*/
e.printStackTrace();
System.out.println(e.getMessage());
}
}
}
'java' 카테고리의 다른 글
java 기본 용어 간단 정리 (0) | 2024.09.21 |
---|---|
java활용 예시(Lambda 활용 함수) (0) | 2024.09.19 |
java 활용 예시 (Builder) (0) | 2024.09.19 |
java활용 예시(Stream) (1) | 2024.09.13 |
java활용 예시(lambda expression) (0) | 2024.09.13 |