산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> java

Java throws 키워드 이해하기: 예제와 모범 사례

Java throws 키워드

Java에서 throws 키워드는 메서드가 하나 이상의 예외를 던질 수 있음을 선언하게 해줍니다. 잠재적 실패를 명시적으로 나열함으로써 호출자가 예외를 처리하거나 더 전파해야 함을 알리고, 코드를 명확하고 신뢰성 있게 유지합니다.

체크 예외를 던질 수 있는 라이브러리 메서드를 호출하면 Java는 이를 처리하도록 강제합니다. 보통 위험한 코드를 try-catch 블록으로 감쌉니다:

Java throws 키워드 이해하기: 예제와 모범 사례

import java.io.*;
class File1 {
    public static void main(String[] args) {
        try {
            FileWriter file = new FileWriter("c:\\Data1.txt");
            file.write("Guru99");
            file.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

try-catch를 생략하면 컴파일러가 프로그램을 거부합니다. 모든 예외를 개별적으로 처리하는 것은 장황할 수 있지만, Java는 더 깔끔한 대안을 제공합니다: 메서드 시그니처에 throws로 예외를 선언하고 호출자가 처리하도록 위임하는 것입니다.

throws 문법

public void methodName(Parameters) throws Exception1, Exception2, … {
    …
}

throws 예제

아래는 같은 파일 쓰기 예제지만 main 메서드가 IOException을 잡는 대신 던지도록 선언합니다:

import java.io.*;
class File1 {
    public static void main(String[] args) throws IOException {
        FileWriter file = new FileWriter("c:\\Data1.txt");
        file.write("Guru99");
        file.close();
    }
}

이 코드 실행 전 C:\ 드라이브에 Data1.txt 빈 파일을 생성하세요. Java는 체크 예외를 처리하기 위해 컴파일러가 요구하는 두 가지 방법을 제공합니다:

  1. 위험한 코드를 try-catch 블록으로 감싸기
  2. 메서드에 throws 선언하고 예외를 호출자에게 전파

적절한 접근법 선택은 문맥에 따라 다릅니다. 메서드가 공개 API의 일부라면 예외를 전파하여 API 표면을 깔끔하게 유지하고 호출자가 실패를 명시적으로 처리하도록 강제하는 것이 좋습니다.

Throw vs Throws

throw throws
새 예외 인스턴스 생성 및 던지기 메서드 시그니처에서 메서드가 전파할 예외 선언
한 번에 하나의 예외만 던질 수 있음 여러 예외 타입을 콤마로 구분해 나열 가능
예: 예:
throw new IOException("cannot open connection"); throws IOException, ArrayIndexOutOfBoundsException

요약

throws 키워드는 Java에서 명확한 예외 전파에 필수적입니다. 메서드가 throws를 선언하면 모든 호출자는 처리하거나 더 선언해야 하며, 에러 조건이 결코 묵묵히 무시되지 않게 보장합니다.

java

  1. Java final 키워드 마스터: 변수, 메서드, 클래스에서의 활용
  2. Java 예외: 종류, 계층 구조, 처리 기초
  3. Java 예외 처리 마스터: try-catch-finally, throw, throws 완전 정복
  4. Java String length() 메서드: 문자열 크기 구하기 (예제 포함)
  5. Java String.charAt() 완전 이해: 문법, 반환타입, 예외, 실전 예제
  6. Java String.contains() 메서드: 부분문자열 포함 여부 확인 (실전 예제)
  7. Java String.endsWith() 마스터: 문자열 접미사 확인 예제
  8. Java BufferedReader로 파일 읽기: 실전 가이드와 예제
  9. 자바 삽입 정렬 알고리즘: 명확한 예제와 단계별 가이드
  10. 자바 선택 정렬: 단계별 예제와 전체 코드