약 5분
읽기 설정
글자 크기
줄 간격
글꼴
4.1. Exception 처리 기초
프로그램을 개발하다 보면 다양한 오류나 예외 상황에 직면하게 됩니다. 예를 들어, 사용자가 잘못된 데이터를 입력하거나 네트워크 연결이 끊기는 경우가 있을 수 있습니다. 이러한 상황에 대비하기 위해 Java에서는 예외(Exception) 처리를 제공합니다. 예외 처리는 프로그램의 안정성을 높이고 예상치 못한 오류로부터 프로그램을 보호하는 데 중요한 역할을 합니다.
예외를 올바르게 처리하지 않으면 프로그램이 예기치 않게 종료될 수 있습니다. 따라서 개발자는 예외 발생 가능성을 인지하고, 이를 적절하게 처리하는 방법을 배워야 합니다.
Java에서 예외 처리를 위한 기본 개념은 다음과 같습니다:
- 예외: 프로그램 실행 중 발생할 수 있는 오류의 종류입니다.
- throw: 예외를 발생시키는 키워드입니다.
- throws: 메소드가 어떤 예외를 던질 수 있는지를 지정합니다.
- try-catch 블록: 예외가 발생할 것으로 예상되는 코드를 안전하게 감싸고, 예외 발생 시 대응하기 위한 구조입니다.
예제
다음은 예외 처리의 기본적인 구조를 보여주는 간단한 예제입니다. 사용자가 두 개의 숫자를 입력받아 나누는 프로그램입니다. 0으로 나누는 경우를 처리하기 위해 예외 처리를 합니다.
import java.util.Scanner;
public class DivisionExample {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("두 개의 숫자를 입력하세요:");
int num1 = scanner.nextInt();
int num2 = scanner.nextInt();
try {
int result = divide(num1, num2);
System.out.println("결과: " + result);
} catch (ArithmeticException e) {
System.out.println("오류: 0으로 나눌 수 없습니다.");
}
}
public static int divide(int a, int b) {
return a / b;
}
}
이 예제에서는 사용자가 입력한 두 숫자를 나누는 divide 메소드를 호출합니다. 만약 두 번째 숫자가 0이면 ArithmeticException이 발생하고, 이를 catch 블록에서 처리하여 오류 메시지를 출력합니다. 이를 통해 프로그램이 오류로 인해 종료되지 않고, 사용자에게 적절한 피드백을 줄 수 있습니다.
실습
- 위의 예제를 바탕으로 여러 개의 숫자를 입력받아, 각각을 나누는 프로그램을 작성해 보세요. 나누는 과정에서 발생할 수 있는 예외를 처리하는 코드를 추가하세요.
- 각기 다른 예외(예:
InputMismatchException,ArrayIndexOutOfBoundsException)를 의도적으로 발생시켜 보고, 이를 처리하는 코드를 작성해 보세요.
프로젝트
학생 관리 프로그램에서 사용자로부터 입력을 받을 때, 다양한 예외 상황을 고려해 예외 처리 기능을 통합하세요. 예를 들어, 학생의 학번 입력 시 숫자가 아닌 문자를 입력하는 경우를 처리하도록 만들 수 있습니다.
정리
Java에서 예외 처리는 필수적인 요소입니다. 이를 통해 코드의 안정성을 높이고, 사용자 경험을 개선할 수 있습니다. 다음 강의에서는 커스텀 예외(Custom Exception)를 만드는 방법에 대해 배울 것입니다. 이는 특정한 예외 상황을 보다 명확하게 처리하는 데 유용합니다.
댓글 0
아직 댓글이 없습니다. 첫 댓글을 남겨보세요.