반응형
해당 강의를 보고 정리한 것입니다.
https://programmers.co.kr/learn/courses/5
사용자 정의 Exception
: Exception이나 Exception의 자식을 상속받아 만들어진 클래스
클래스의 이름만으로 어떤 오류가 발생했는지 알게 해 더욱 직관성을 높이기 위해서 사용
- Exception 클래스를 상속받아 정의한 checked Exception
- 반드시 오류를 처리해야만 하는 Exception
- 예외 처리하지 않으면 컴파일 오류 발생 - RuntimeException 클래스를 상속받아 정의한 unChecked Exception
- 예외 처리하지 않아도 오류를 발생시키지 않음
RuntimeException을 상속받은 BizException클래스
public class BizException extends RuntimeException {
public BizException(String msg) {
super(msg);
}
public BizException(Exception ex) {
super(ex);
}
}
BizService클래스는 업무를 처리하는 메서드를 가지고 있다고 가정
public class BizService {
public void bizMethod(int i) throws BizException{
System.out.println("비즈니스 메서드 시작");
if(i<0)
throw new BizException("매개변수 i는 0이상이여야 합니다.");
System.out.println("비즈니스 메서드 종료");
}
}
BizService를 이용하는 BizExam클래스
- 매개변수 -1을 넘길때는 Exception이 발생하기 때문에 try catch블록으로 처리하기
public class BizExam {
public static void main(String[] args) {
BizService biz = new BizService();
try {
biz.bizMethod(5);
biz.bizMethod(-2);
} catch(BizException e) {
System.out.println(e);
}
}
}
>>
비즈니스 메서드 시작
비즈니스 메서드 종료
비즈니스 메서드 시작
BizException: 매개변수 i는 0이상이어야 합니다.
반응형
'Language > Java' 카테고리의 다른 글
자바 중급1 - Object클래스, equals, toString, hashcode (0) | 2022.01.13 |
---|---|
자바 입문하기20 - 문제풀기)약수의 합 (0) | 2022.01.12 |
자바 입문하기18 - throws, throw (0) | 2022.01.12 |
자바 입문하기17 - Exception (0) | 2022.01.12 |
자바 입문하기16 - 내부클래스 (0) | 2022.01.12 |