Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

Java에서 예외와 오류의 차이점

<시간/>

예외와 오류는 모두 Throwable 클래스의 하위 클래스입니다. 이 오류는 주로 시스템 리소스 부족으로 인해 발생하는 문제를 나타내며 우리 응용 프로그램은 이러한 유형의 문제를 포착하지 않아야 합니다. 오류의 예로는 시스템 충돌 오류 및 메모리 부족 오류가 있습니다. 오류는 대부분 확인되지 않은 유형에 속하는 런타임에 발생합니다.

예외는 런타임 및 컴파일 시간에 발생할 수 있는 문제입니다. 주로 개발자가 작성한 코드에서 발생합니다. 예외는 확인된 예외와 확인되지 않은 예외와 같은 두 가지 범주로 나뉩니다.

Sr. 아니요. 오류 예외
1
유형
확인되지 않은 유형으로 분류됨
선택 및 선택 취소로 분류
2
패키지
java.lang.error에 속합니다.
java.lang.Exception에 속합니다.
3
복구 가능/불가능
회복 불가능
복구 가능
4
컴파일 시간에는 발생할 수 없습니다.
런타임 컴파일 시간에 발생할 수 있습니다.
5
예시
OutOfMemoryError ,IOError
NullPointerException, SqlException

오류의 예

public class ErrorExample {
   public static void main(String[] args){
      recursiveMethod(10)
   }
   public static void recursiveMethod(int i){
      while(i!=0){
         i=i+1;
         recursiveMethod(i);
      }
   }
}

출력

Exception in thread "main" java.lang.StackOverflowError
   at ErrorExample.ErrorExample(Main.java:42)

예외의 예

public class ExceptionExample {
   public static void main(String[] args){
      int x = 100;
      int y = 0;
      int z = x / y;
   }
}

출력

java.lang.ArithmeticException: / by zero
   at ExceptionExample.main(ExceptionExample.java:7)