[JAVA] 오류와 예외

공부기록·2023년 10월 5일
0
post-thumbnail

Throwable class

  • error class와 exception class 는 모두 throwable class를 상속받는다. 이 클래스를 통하여 오류나 예외에 대한 메시지를 반환받을 수 있다.

📘오류(Error)란?


  • 예측하거나 방지할 수 없는 문제로 시스템의 종료가 불가피하다.

  • 코드로 방지하거나 해결할 수 있는 문제가 아닌 오류

  • 주로 메모리부족 혹은 스택오버플로우같은 현상이다.



📘예외(Exception)란?


  • 코드로 방지나 해결이 가능한 오류로 대응코드를 설정해 놓음으로써 프로그램의 비정상적인 종료 혹은 동작을 막을 수 있다.

✏️예외처리(Exception Handling)

	try {
    	오류가 발생할 가능성이 있는 코드
    } catch(예외1){
    	수행될 코드
    } catch(예외2){
    	수행될 코드
    } finally{
    	예외에 상관없이 반드시 수행되어야할 코드
    }
    

### ✏️예시 - 사용자가 만든 예외 클래스 이용
class MyErrException extends Exception { //Exception class를 상속받아야한다.
    private String msg;
	
    // 사용자 커스텀 예외클래스 생성자
    public MyErrException(String msg) {
        super(msg); // 부모 Exception 클래스 생성자도 호출
        this.msg = msg;
    }
	
    // 사용자 커스텀 예외클래스 메세지 출력
    public void printMyMessage() {
        System.out.println(this.msg);
    }
}

public class Main {
    public static void main(String[] args) {
        try {
            throw new MyErrException("나의 커스텀 예외 클래스 메세지");
        } catch (MyErrException e) {
            e.printMyMessage(); // 커스텀 예외 클래스의 메서드 실행
            e.printStackTrace(); // 상속한 부모클래스의 메서드 실행
        }
    }
}

0개의 댓글

관련 채용 정보