Java에서 처리되지 않은 예외

Mohammad Irfan 2023년10월12일
  1. Java에서 처리되지 않은 예외
  2. Java에서 처리된 예외
Java에서 처리되지 않은 예외

이 튜토리얼은 처리되지 않은 예외가 무엇이며 Java에서 처리하는 방법을 소개합니다.

예외는 코드 실행을 비정상적으로 중지하고 코드를 종료시키는 조건입니다.

Java에서 예외는 잘못된 코드나 메모리 문제와 같은 시스템 오류로 인해 발생할 수 있습니다. Java는 코드가 종료 없이 원활하게 실행되고 원하는 결과를 제공할 수 있도록 예외 처리를 완벽하게 지원합니다.

처리되지 않은 예외를 처리되지 않은 예외라고 하며 실행 전에 코드를 종료합니다.

이 기사에서는 처리되지 않은 예외가 무엇이며 어떻게 처리하는지 논의할 것입니다. 몇 가지 예를 들어 이해합시다.

Java에서 처리되지 않은 예외

이 예제에서는 사용자로부터 두 개의 정수 값을 가져와서 나눕니다. 이 코드는 오류나 예외 없이 잘 작동하지만 Java는 코드를 실행하지 않고 제수가 0이면 예외를 throw합니다.

여기서는 예외 처리기를 사용하지 않았으므로 코드가 실행을 중지하고 비정상적으로 종료됩니다. 예외의 이유를 이해하기 위해 콘솔을 볼 수 있습니다.

이 예외는 처리되지 않았으며 제대로 처리하지 않으면 얼마나 위험한지 알 수 있습니다.

import java.util.Scanner;

public class SimpleTesting {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    System.out.println("Enter any two values");

    int val1 = sc.nextInt();
    int val2 = sc.nextInt();
    double result = val1 / val2;
    System.out.println("result " + result); // this statement does not execute
  }
}

출력:

Enter any two values
30
0
Exception in thread "main" java.lang.ArithmeticException: / by zero
	at myproject.SimpleTesting.main(SimpleTesting.java:13)

Java에서 처리된 예외

여기에서 예외를 처리하기 위해 핸들러(try-catch 블록)를 사용하고 있습니다. 이 코드는 try-catch 블록이 있고 예외가 발생한 후에도 코드를 실행할 수 있다는 점을 제외하면 위의 코드와 유사합니다.

코드의 마지막 인쇄 문을 확인하십시오. 위의 코드에서 이 문은 예외로 인해 실행되지 않습니다.

그래도 이제 코드가 종료되지 않기 때문에 아래 코드에서 예외가 발생한 후에도 실행됩니다. 게다가 코드를 건너뛰고 결과를 콘솔에 출력하여 실행을 시작합니다.

아래의 예를 참조하십시오.

import java.util.Scanner;

public class SimpleTesting {
  public static void main(String[] args) {
    double result = 0.0;
    try {
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter any two values");

      int val1 = sc.nextInt();
      int val2 = sc.nextInt();
      result = val1 / val2;
    } catch (Exception e) {
      System.out.println("Exception occured " + e);
    }
    System.out.println("result " + result);
  }
}

출력:

Enter any two values
30
0
Exception occured java.lang.ArithmeticException: / by zero
result 0.0

관련 문장 - Java Exception