ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [JAVA]_8일차_05.06
    프로그래밍/Java 2021. 5. 7. 22:42

    예외 처리

    try {
    
        오류가 발생할 수 있는 부분
    
    } catch (특정 오류) {    
    
        명시된 오류 발생하면  
        현재 부분 내용 실행
      (ex. 오류가 발생하였습니다 출력)
        e.printStackTrace(); //오류에 대한 내용 출력
    
    } finally {
        무조건 실행되야 하는 부분 (오류발생해도, 오류없어도)
    }

    오류의 종류

    • Logic Error
    • Syntax Error ↔ 일반 예외 (Compiler 가 체크한다→강제적으로 예외처리 요구)
    • Runtime Error ↔ 실행 예외 (Compiler 가 체크하지 않는다→예외처리 코드를 개발자의 경험을 바탕으로 작성해야 함)

    빈번하게 발생하는 Runtime Exception

    • NullPointerException
    • ArrayIndexOutOfBoundsException
    • NumberFormatException
    • ClassCastException

    다중 catch

    • catch 순

    자동 리소스 닫기 (xx.close() )

    예외 떠넘기기 (메소드를 호출한 곳으로)

    • throws 키워드

    사용자 정의 예외 & 예외 발생

    • 사용자 정의 예외 클래스

      • 일반 예외로 선언할 경우 (컴파일러가 체크하는) : Exception 상속
      • 실행 예외로 선언할 경우 (컴파일러가 체크하지 않는) : RuntimeException 상속
    • 예외 발생 시키기

        //예외를 발생시키는 방법
        throw new XXXException();
        throw new XXXException("메세지");
        public void withdraw(int money) throws BalanceInsufficientException {
            if(balance < money) {
                throw new BalanceInsufficientExcpetion("잔고부족:"+(money-balance)+" 모자람");
            }
            balance -= money;
        }

    댓글

Designed by Tistory.