[Java 09] 예외(Exception)

 ✔️ 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() : 상속받은 클래스의 생성자를 호출한다는 의미

 

 

 


✔️ 참고

 

자바로 구현하고 배우는 자료구조

부스트코스 무료 강의

www.boostcourse.org