관리 메뉴

오버플로

[Java] Exception Handling 본문

Java

[Java] Exception Handling

NACO 2021. 8. 24. 22:15

오늘은 너무나 주우우웅요한 예외처리!_!

 

 

 Exception Handling (예외처리) 

- Exception이란 ? 가벼운 에러

  (프로그램은 동작 중에 error가 발생하면 동작을 멈추지만 Exception이 발생하면 연속적인 동작을 할 수 있음)

- Error : 발생하면 프로그램이 정지하고 연속적인 사용이 불가능

- Excepton : 발생하면 프로그램이 정지하지만 대비 코드를 실행하여 연속적인 사용이 가능

 

- Compile ExceptionRuntime Exception이 있음

  • Compile Exception (컴파일 예외)
    - 개발자가 try ~ catch를 사용하여 반드시 처리해야 하는 예외
    - compile time에 처리되는 예외
    - bytecode가 제대로 생성되도록 처리하는 예외
  • Runtime Exception (런타임 예외)
    - 개발자가 try ~ catch를 하지 않더라도 JVM에서 자동으로 처리해주는 예외
      (하지만, 개발자가 인지하고! 반드시 처리! 해야한다!)
    - Memory에 할당된 후에 문제가 발생했을 때 처리하는 예외

* 모든 예외처리의 부모는 lang package의 Throwable Class 

 > 자식클래스로는 Error와 Exception이 있음

 > 예외의 부모가 Exception이면 CompileException

    예외의 부모가 RuntimeException이면 RuntimeException!

 

 

** 개발자가 인지하고 처리해야 할 RuntimeException의 대표를 정리해보자! ** 

  • ArithmeticException : 수를 0으로 나누는 경우 발생하는 예외
  • ArrayIndexOutOfBoundsException : 배열, java.util.List에 존재하지 않는 index를 사용할 때 발생하는 예외
  • NumberFormatException : 문자열을 숫자로 변경할 때 문자열이 숫자가 아닌 경우 발생하는 예외
  • NullPointerException : 참조형데이터형을 생성하지 않고 사용할 때 발생하는 예외
Comments