>Java >java지도 시간 >Java 기능 개발의 일반적인 예외 유형 및 복구 방법

Java 기능 개발의 일반적인 예외 유형 및 복구 방법

王林
王林원래의
2024-05-03 14:09:01712검색

Java 函数开发中常见的异常类型及其修复措施

Java 함수 개발의 일반적인 예외 유형 및 해당 복구 방법

Java 함수 개발 과정에서 함수의 올바른 실행에 영향을 미치는 다양한 예외가 발생할 수 있습니다. 다음은 일반적인 예외 유형 및 수정 사항입니다.

1. NullPointerException

  • 설명: 초기화되지 않은 개체에 액세스할 때 발생합니다.
  • 수정: 사용하기 전에 개체가 null이 아닌지 확인하세요.

샘플 코드:

try {
    String name = null;
    System.out.println(name.length());
} catch (NullPointerException e) {
    System.out.println("Name is null, cannot access length.");
}

2. IndexOutOfBoundsException

  • 설명: 배열이나 컬렉션에 존재하지 않는 인덱스에 액세스하려고 할 때 발생합니다.
  • 수정: 색인이 유효한 범위 내에 있는지 확인하세요.

샘플 코드:

int[] numbers = {1, 2, 3};
try {
    System.out.println(numbers[3]);
} catch (IndexOutOfBoundsException e) {
    System.out.println("Index 3 is out of bounds for the array.");
}

3.NumberFormatException

  • 설명: 숫자가 아닌 문자열을 숫자로 변환하려고 할 때 발생합니다.
  • 수정: 문자열이 유효한 숫자를 나타내는지 확인하세요.

샘플 코드:

String numberString = "abc";
try {
    int number = Integer.parseInt(numberString);
} catch (NumberFormatException e) {
    System.out.println("Could not parse '" + numberString + "' into an integer.");
}

4. IllegalArgumentException

  • 설명: 함수가 잘못된 매개변수를 수신하면 발생합니다.
  • 수정: 함수의 예상 매개변수를 문서화하고 입력 유효성을 검사합니다.

샘플 코드:

public void doSomething(int index) {
    if (index < 0) {
        throw new IllegalArgumentException("Index cannot be negative.");
    }
    // ...
}

5.StackOverflowError

  • 설명: 함수가 자신을 너무 많이 호출하여 메모리 스택이 오버플로될 때 발생합니다.
  • 수정: 함수가 결국 종료되는지 확인하기 위해 재귀 또는 루프 조건을 확인하세요.

샘플 코드:

public void doRecursion(int depth) {
    if (depth == 0) {
        return;
    }
    doRecursion(--depth);
}

이러한 일반적인 예외를 이해하고 수정하면 Java 기능의 견고성과 안정성을 향상시킬 수 있습니다.

위 내용은 Java 기능 개발의 일반적인 예외 유형 및 복구 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.