✔️ java.lang.Exception
- 모든 예외 상황은 이 클래스를 상속받음.
특징
- 각각의 exception은 코드에서 잘못된 점을 알려줌.
- exception 이름 자체가 중요
- 단서를 제공하고 디버깅하는 과정을 도와줌.
- es) NoSuchElementException, NullPointerException
- Exception 클래스를 상속받은 새로운 exception을 만들면 코드를 개인화하고 디버깅을 쉽게 만듦.
→ 이 때도 이름이 중요
커스텀 Exception 만들기
pacakge exception; // 서로 관련 있는 것들은 묶어두는 것이 좋음. exception 패키지에 묶어두라.
public class FileFormatException extends Exception {
// Exception을 상속 받는 것이 아주 아주 중요
// 기본 생성자
public FileFormatException(){
super(); // 상속받은 클래스의 생성자를 호출한다는 의미
}
// 문자열을 인자로 받아오는 생성자
// throw new FileFormatException("Your file is not well formatted") 가 가능해짐.
// Your file is not well formatted가 이 생성자에 전달되고 super에 전달되면 이 메시지가 출력됨.
public FileFormatException(String s){
super(s); // super 호출하여 s를 전달
}
}
// 예외 상황 발생 시 throw
throw new FileFormatException("Your file is not well formatted")
→ 커스텀 exception을 만들어 throw를 사용하면, 그 exception 이름으로 에러 발생
✔️ super() : 상속받은 클래스의 생성자를 호출한다는 의미
✔️ 참고
'Java' 카테고리의 다른 글
[Java] constructor, 생성자란 무엇인가? (2) | 2024.02.08 |
---|---|
[Java 기초 00] 자바의 구동방식(JVM) (0) | 2024.01.06 |
[Java 08] Autoboxing - primitive type & Wrapper class (0) | 2023.08.09 |
[Java 07] 매개 변수화 타입(Parameterized Type) (0) | 2023.08.09 |
[Java 06] Generic Programming (0) | 2023.08.09 |