본문 바로가기
Programming/Java

자바의 예외 처리

by vita12321 2023. 8. 3.
728x90
반응형

자바의 예외 처리(Exception Handling) 프로그램 실행 발생할 있는 에러를 처리하기 위한 기능입니다. 자바에서 예외 처리는 try-catch 블록을 사용하여 처리되며, 글에서는 자바의 예외 처리에 대해 자세히 살펴보고, 예제 코드를 통해 기능을 이해해 보겠습니다.


 

1. 자바 예외 처리의 개념 종류

 

자바에서는 가지 주요 예외 유형이 있습니다.

 

  • 확인된 예외 (Checked Exception)
    RuntimeException 클래스를 상속하지 않는 클래스로, 명시적으로 예외 처리를 하지 않으면 컴파일러가 에러를 발생시킵니다.

  • 확인되지 않은 예외 (Unchecked Exception)
    RuntimeException 클래스를 상속하는 클래스로, 명시적으로 처리하지 않아도 컴파일러가 에러를 발생시키지 않습니다.

 

2. 자바 예외 처리 구현 사용

 

자바 예외 처리를 구현하고 사용하기 위해서는 다음과 같은 과정들을 거칩니다.

 

  • try 블록: 예외가 발생할 가능성이 있는 코드를 실행합니다.

  • catch 블록: 발생한 예외를 처리합니다.

  • finally 블록 (선택사항): 예외 발생 여부와 상관없이 실행되는 코드 블록입니다.

 

예제로 설명하면 아래와 같습니다.

 

// 예외 처리 예제

import java.io.File;

import java.io.FileNotFoundException;

import java.io.FileReader;

 

public class Main {

    public static void main(String[] args) {

        try {

            File file = new File("input.txt");

            FileReader fr = new FileReader(file);

            // 파일을 읽는 코드

        } catch (FileNotFoundException e) {

            System.out.println("파일을 찾을 수 없습니다: " + e.getMessage());

        } finally {

            System.out.println("예외 처리 종료");

        }

    }

}

 

예제에서는 'input.txt' 파일을 읽으려고 시도하고, FileNotFoundException catch하여 처리합니다. 마지막으로 finally 절이 실행됩니다.


 

3. 자바 예외 처리 다중이 예제

 

여러 예외를 처리할 경우 다음과 같이 작성할 있습니다.

 

// 다중 예외 처리 예제

import java.io.File;

import java.io.FileNotFoundException;

import java.io.FileReader;

import java.io.IOException;

 

public class Main {

    public static void main(String[] args) {

        try {

            File file = new File("input.txt");

            FileReader fr = new FileReader(file);

            // 파일을 읽는 코드

        } catch (FileNotFoundException e) {

            System.out.println("파일을 찾을 수 없습니다: " + e.getMessage());

        } catch (IOException e) {

            System.out.println("파일을 읽을 수 없습니다: " + e.getMessage());

        } finally {

            System.out.println("예외 처리 종료");

        }

    }

}

 

예제에서는 FileNotFoundException 외에 IOException 처리하는 방법을 보여줍니다. 각각의 catch 절에서 발생한 예외를 처리할 있습니다.


 

4. 사용자 정의 예외 처리

 

사용자 정의 예외를 생성하려면 Exception 클래스를 상속받아 작성할 있습니다. 사용자 정의 예외를 사용하면 프로그램의 상황에 맞추어 적절한 예외 처리를 있습니다.

 

// 사용자 정의 예외 예제

class CustomException extends Exception {

    public CustomException(String message) {

        super(message);

    }

}

 

public class Main {

    public static void main(String[] args) {

        try {

            throw new CustomException("사용자 정의 예외 발생");

        } catch (CustomException e) {

            System.out.println("에러: " + e.getMessage());

        }

    }

}

 

예제에서는 CustomException이라는 사용자 정의 예외를 생성하고, 이를 처리하는 방법을 보여줍니다.

 

 

 

자바 예외 처리를 통해 프로그램 실행 발생할 있는 에러를 처리하고, 프로그램의 안정성을 높일 있습니다. 다양한 예외 처리 기법을 사용하여 상황에 맞는 예외 처리를 구현해야 합니다.

728x90
반응형

'Programming > Java' 카테고리의 다른 글

자바의 람다식  (0) 2023.08.05
자바의 컬렉션 프레임워크  (0) 2023.08.04
자바의 입출력  (0) 2023.08.02
자바의 내부 클래스  (0) 2023.08.01
자바의 인터페이스  (0) 2023.07.31