본문 바로가기
언어 공부하기/JAVA 개념

[Java 자바] ExceptionError와 Try-Catch 구문 완벽 가이드 : 기본 개념부터 예제까지 (자바 Try-Catch)

by 망댕이 2024. 11. 22.
반응형

자바에서 여러가지 에러가 존재한다. 문법에러와 런타임 에러가 있다.

문법에러는 실행 전에 수정할 수 있는 컴파일 에러지만 런타임 에러는 컴파일이 끝난 클래스들도 실행하는 과정에서 논리적인 에러를 발생시킨다.

런타인 에러 중에서 예측해서 조치를 취할 수 있는 에러를 예외(Exception)라고 한다. 이를 처리하지 않으면 프로그램이 중단될 수 있다. 이를 방지하고 안정적으로 실행하기 위해 try-catch 구문을 사용한다.

 

이번 글에서는 try-catch 구문의 구조와 사용법을 예제를 통해 자세히 알아보자.

 

▷ Try-Catch 구문의 구조

Try-Catch 구문은 예외가 발생할 가능성이 있는 코드를 처리하기 위해 사용된다.

아래 기본 구조를 살펴보자:

 

try {
    // 예외가 발생할 가능성이 있는 코드
} catch (예외클래스 e) {
    // 예외가 발생했을 때 실행되는 코드
} finally {
    // 예외 발생 여부와 상관없이 항상 실행되는 코드 (선택적)
}
System.out.print("mang");

 

try{} 안에서 예외가 발생하면 catch{} 안에서 이를 처리하고 mang을 프린트한다.

try{} 안에서 예외가 발생하지 않으면 catch{}를 건너뛰고 mang을 프린트한다.

그리고 예외 발생 여부와 상관없이 finally{}가 있다면 항상 실행된다.

 

| Try-Catch 구문 간단 예제

public class TryCatchmang {
    public static void main(String[] args) {
        int a = 10;
        int b = 0;

        try {
            int result = a / b; // 예외 발생
            System.out.println("결과: " + result);
        } catch (ArithmeticException e) {
            System.out.println("예외 발생: 0으로 나눌 수 없음");
        } finally {
            System.out.println("프로그램 종료");
        }
    }
}
출력 결과

예외 발생: 0으로 나눌 수 없음
프로그램 종료

 

| 다중 Try-Catch 구문 간단 예제

하나의 try{}에서도 여러 종류의 예외를 처리할 수 있다.

public class MultipleCatchmang {
    public static void main(String[] args) {
        String[] numbers = {"100", "0", "a"};

        for (String number : numbers) {
            try {
                int value = Integer.parseInt(number); // 숫자로 변환
                int result = 100 / value;             // 나누기 연산
                System.out.println("결과: " + result);
            } catch (ArithmeticException e) { // 수학적 오류로 인한 예외처리
                System.out.println("수학적 오류: " + e.getMessage());
            } catch (NumberFormatException e) { // 숫자 형식 오류로 인한 예외처리
                System.out.println("숫자 변환 오류: " + e.getMessage());
            }
        }
    }
}
출력 결과

결과: 10
수학적 오류: / by zero
숫자 변환 오류: For input string: "a"

 

 

try-catch 구문은 자바 프로그램의 안정성을 높이는데 필요한 구문중 하나다.

예외로 인한 프로그램의 갑작스러운 종료를 방지하고 try-catch 구문을 자주 사용하는 연습을 해보세요!!

 

궁금한 점이나 추가적인 활용 예제가 있다면 댓글로 알려주세요! 😊

반응형