>  기사  >  Java  >  자바의 예외는 무엇입니까

자바의 예외는 무엇입니까

尚
원래의
2019-12-05 16:21:563036검색

자바의 예외는 무엇입니까

Java의 예외(예외라고도 함)는 프로그램 실행 중에 발생하는 이벤트로, 이로 인해 실행 중인 프로그램의 정상적인 명령 흐름이 중단됩니다. 프로그램의 실행 오류를 신속하고 효과적으로 처리하기 위해서는 예외 클래스를 사용해야 합니다.

예외 소개:

프로그램에서는 프로그래머가 예상하지 못한 다양한 상황이나 사용자의 잘못된 데이터, 존재하지 않는 문서를 열려고 하는 등 프로그래머가 통제할 수 없는 상황에서 오류가 발생할 수 있습니다. 등. 프로그램의 실행 오류를 신속하고 효과적으로 처리하기 위해 Java에서는 특별히 예외 클래스를 도입했습니다.

예:

예외가 무엇인지 더 잘 이해하기 위해 매우 간단한 Java 프로그램을 살펴보겠습니다. 다음 샘플 코드에서는 1~3 범위의 정수를 입력할 수 있으며, 그 외의 경우에는 입력 오류가 발생합니다.

import java.util.Scanner;

public class Test01 {
    public static void main(String[] args) {
        System.out.println("请输入您的选择:(1~3 之间的整数)");
        Scanner input = new Scanner(System.in);
        int num = input.nextInt();
        switch (num) {
        case 1:
            System.out.println("one");
            break;
        case 2:
            System.out.println("two");
            break;
        case 3:
            System.out.println("three");
            break;
        default:
            System.out.println("error");
            break;
        }
    }
}

일반적으로 사용자는 시스템 메시지에 따라 1에서 3 사이의 숫자를 입력합니다. 그러나 사용자가 요구한 대로 입력하지 않는 경우, 예를 들어 문자 "a"를 입력하는 경우 프로그램 실행 시 예외가 발생하며 실행 결과는 다음과 같습니다.

请输入您的选择:(1~3 之间的整数)
a
Exception in thread "main" java.util.InputMismatchException
        at java.util.Scanner.throwFor(Unknown Source)
        at java.util.Scanner.next(Unknown Source)
        at java.util.Scanner.nextInt(Unknown Source)
        at java.util.Scanner.nextInt(Unknown Source)
        at text.text.main(text.java:11)

예외의 원인과 사용 원칙

Java에서 예외가 발생하는 세 가지 주요 이유는 다음과 같습니다.

1. Java 내부 오류 예외, Java 가상 머신에서 생성된 예외.

2. 널 포인터 예외, 범위를 벗어난 배열 예외 등 작성된 프로그램 코드의 오류로 인해 발생하는 예외. 이러한 종류의 예외를 확인되지 않은 예외라고 하며 일반적으로 특정 클래스에서 이러한 예외를 중앙에서 처리해야 합니다.

3. throw 문을 통해 수동으로 생성된 예외를 확인된 예외라고 하며 일반적으로 호출자에게 필요한 정보를 알리는 데 사용됩니다.

Java는 객체 지향 방법을 통해 예외를 처리합니다. 메소드 실행 중에 예외가 발생하면 메소드는 예외를 나타내는 객체를 생성하고 이를 런타임 시스템에 전달하여 예외를 처리할 해당 코드를 찾습니다.

예외 객체를 생성하고 이를 런타임 시스템에 제출하는 과정을 예외 발생이라고 부릅니다. 런타임 시스템은 해당 유형의 예외를 처리할 수 있는 개체를 찾을 때까지 메서드의 호출 스택을 검색합니다. 이 프로세스를 예외 포착이라고 합니다.

Java 예외로 인해 사용자는 프로그램의 견고성과 보안을 고려해야 합니다. 예외 처리는 프로그램의 정상적인 흐름을 제어하는 ​​데 사용되어서는 안 됩니다. 주요 기능은 프로그램이 실행될 때 발생하는 예외를 캡처하고 그에 따라 처리하는 것입니다. 특정 메소드에서 발생할 수 있는 예외를 처리하는 코드를 작성할 때 다음 세 가지 원칙을 따를 수 있습니다.

1. 예외를 포착하려면 현재 메소드 선언에 try catch 문을 사용하세요.

2. 메서드가 재정의되면 이를 재정의하는 메서드는 동일한 예외 또는 예외의 하위 클래스를 발생시켜야 합니다.

3. 상위 클래스가 여러 예외를 발생시키는 경우 재정의 메서드는 해당 예외의 하위 집합을 발생시켜야 하며 새 예외를 발생시킬 수 없습니다.

더 많은 Java 지식을 알고 싶다면 java 기본 튜토리얼 칼럼을 주목해주세요.

위 내용은 자바의 예외는 무엇입니까의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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