본문 바로가기
Error(Exception)/ERROR-JAVA

[자바(java)]Exception

by control+c 2023. 2. 21.
반응형

Exception 이란?

Exception은 Java 프로그래밍 언어에서 예외 상황이 발생했을 때 발생하는 예외 상황을 처리하기 위해 사용되는 객체이다. Exception 객체는 예외 상황이 발생했을 때 처리되는 방법을 기술하는 객체이며, 예외 상황이 발생하면 해당 Exception 객체가 발생하게 된다.

Exception 종류

Exception 객체는 여러 가지 종류가 있다. 일반적으로 다음과 같은 종류로 나뉜다.

  1. Checked Exception : 컴파일러가 이 Exception이 발생할 수 있다고 가정하고 프로그램의 로직을 만들 때, 개발자가 해당 Exception이 발생하면 사전에 처리해야 한다고 알려주는 예외상황이다.

  2. Unchecked Exception : 컴파일러가 이 Exception이 발생할 수도 있다고 가정하지 않고 프로그램 로직을 만들 때, 개발자가 해당 Exception이 발생하면 사전에 처리해야 한다고 알려주지 않는 예외상황이다.

Exception 예제

Exception의 예제를 살펴보자. 예를 들어, 배열의 인덱스를 검사하는 로직이 있다고 해보자. 만약 배열의 인덱스가 범위를 벗어나면 예외가 발생하게 될 것이다.

// 배열의 인덱스가 벗어날 경우 예외가 발생하게 됨
int[] array = new int[10];
int index = 11;
int value = array[index];

이런 경우 ArrayIndexOutOfBoundsException이 발생하게 된다. 이는 Unchecked Exception이며, 컴파일러는 이 Exception이 발생할 수도 있다고 가정하지 않기 때문에 개발자는 이 Exception이 발생하면 어떤 처리를 해야하는지 명시해주지 않는다.

Exception 처리

Exception이 발생했을 때 어떻게 처리할 수 있는지 알아보자. Exception이 발생하면 반드시 처리해야 하는데, 이때 사용하는 것이 try-catch 블록이다.

// 배열의 인덱스가 벗어날 경우 예외가 발생하는 것을 방지하기 위해 try-catch 블록을 사용
int[] array = new int[10];
int index = 11;
try {
    int value = array[index];
} catch (ArrayIndexOutOfBoundsException e) {
    System.out.println("ArrayIndexOutOfBoundsException이 발생했습니다.");
}

try-catch 블록을 사용하면 예외가 발생하더라도 예외를 처리할 수 있게 된다. 이렇게 예외를 처리하면 정상적으로 프로그램이 실행되는 것을 보장할 수 있다.

정리

Exception은 Java 프로그래밍 언어에서 예외 상황이 발생했을 때 처리하기 위해 사용되는 객체이다. Exception 객체는 Checked Exception과 Unchecked Exception으로 나뉘며, 각각의 Exception이 발생할 수 있는 상황과 처리 방법이 다르다. 발생한 Exception을 처리할 때 try-catch 블록을 사용하면 예외 상황에 대비하여 프로그램이 정상적으로 실행될 수 있도록 보장할 수 있다.

반응형

댓글