>  기사  >  Java  >  Java의 예외 및 예외 처리에 대한 설명(그림 및 텍스트)

Java의 예외 및 예외 처리에 대한 설명(그림 및 텍스트)

不言
不言원래의
2018-09-18 17:13:481673검색

이 기사는 Java의 예외 및 예외 처리에 대한 설명(그림 및 텍스트)을 제공합니다. 도움이 필요한 친구들이 참고할 수 있기를 바랍니다.

머리말

  1. 개요: 예외는 Java 프로그램을 실행하는 동안 발생하는 오류입니다.

  2. 예외가 발생할 때 어떻게 처리합니까? Java는 예외 처리 메커니즘이라는 솔루션을 제공합니다.

  3. Java의 예외는 함수의 명령문이 실행될 때 발생하거나 프로그래머가 throw 문을 통해 수동으로 발생할 수 있습니다.

  4. Java 프로그램에서 예외가 발생하는 한 해당 유형의 예외 개체를 사용하여 예외를 캡슐화하고 JRE는 예외를 처리할 예외 핸들러를 찾으려고 합니다.

  5. JDK에는 몇 가지 일반적인 예외 클래스가 내장되어 있으며 예외를 사용자 정의할 수도 있습니다.

  6. Throwable 클래스는 Java 예외 유형의 최상위 상위 클래스입니다. 객체가 Throwable 클래스의 직접 또는 간접 인스턴스인 경우에만 예외 객체이며 예외 처리 메커니즘으로 인식될 수 있습니다.

예외 분류

Checked 예외:

(1) 가장 대표적인 Checked 예외는 프로그래머가 예측할 수 없는 사용자 오류나 문제로 인해 발생하는 예외입니다.
(2) 예를 들어 존재하지 않는 파일을 열려고 하면 예외가 발생합니다. 이러한 예외는 컴파일 중에 단순히 무시할 수 없습니다.

런타임 예외:

(1) 런타임 예외는 프로그래머가 피할 수 있는 예외입니다.
(2) 확인된 예외와 달리 런타임 예외는 컴파일 타임에 무시될 수 있습니다.

오류:

(1) 오류는 예외가 아니지만 프로그래머가 통제할 수 없는 문제입니다.
(2) 코드에서는 오류가 무시되는 경우가 많습니다.
(3) 예를 들어 스택이 오버플로되면 오류가 발생하며 컴파일 타임에 확인할 수 없습니다.

예외 분류 그림:

Java의 예외 및 예외 처리에 대한 설명(그림 및 텍스트)

오류 및 예외 클래스

Java 표준 라이브러리에는 몇 가지 일반적인 예외가 내장되어 있으며 이러한 클래스는 최상위 부모 클래스로 Throwable을 갖습니다.

Throwable은 Error 클래스와 Exception 클래스를 파생합니다.

Error 클래스:

(1) Error 클래스와 그 하위 클래스의 인스턴스는 JVM 자체의 오류를 나타냅니다.
(2) 오류는 프로그래머가 코드를 통해 처리할 수 없으며 오류가 거의 발생하지 않습니다.
(3) 따라서 프로그래머는 Exception이 상위 클래스인 분기 아래의 다양한 예외 클래스에 주의해야 합니다.

Exception 클래스:

(1) Exception 및 해당 하위 클래스는 프로그램이 이벤트를 실행할 때 전송되는 다양한 예상치 못한 발생을 나타냅니다.
(2)는 Java 예외 처리 메커니즘에서 사용할 수 있으며 예외 처리의 핵심입니다.

예외 처리

예외 처리 메커니즘을 사용하면 예외 발생 시 코드에 미리 설정된 예외 처리 논리에 따라 프로그램이 목표한 방식으로 예외를 처리할 수 있으므로 프로그램이 정상으로 돌아가 최대한 실행을 계속할 수 있습니다. 코드의 명확성을 유지하면서.

Java에서 예외 처리 작업은 예외가 발생한 곳에서 해당 예외를 처리할 수 있는 곳으로 실행 제어 흐름을 전달하는 것입니다.

예외를 처리하는 코드를 작성할 때 확인된 예외를 처리하는 방법에는 두 가지가 있습니다.

(1) try...catch...finally 문 블록을 사용하여 처리합니다.
(2) 함수 시그니처에 throws 문을 사용합니다. 함수 호출자는

try...catch...finally 문 블록을 해결합니다.

(1) try 블록에 예외를 일으킬 수 있는 코드를 넣습니다.
(2) try가 실행되는 경우; 예외가 발생하지 않으면 finally 블록 코드와 finally 이후의 코드를 실행합니다.
(3) try에서 코드를 실행하는 동안 예외가 발생하면 catch 블록을 일치시키려고 합니다.
(4) 각 catch 블록이 사용됩니다.
(5) 예외 매칭은 catch 블록의 순서대로 위에서 아래로 검색되며, 일치하는 첫 번째 catch 블록만 실행됩니다.
(6) try 블록의 지역 변수, catch 블록의 지역 변수 및 finally 블록의 지역 변수는 서로 공유될 수 없습니다.
(7) finally 블록은 다음과 같은 경우에는 예외가 발생하든 상관이 없습니다. 해당 try 블록이 실행됩니다. 예, 실행됩니다.
(8) finally 블록은 일반적으로 리소스 릴리스 작업, 파일 닫기 또는 데이터베이스 닫기 등에 사용됩니다.

throws/throw:

(1) 메서드가 확인된 예외를 포착하지 못하는 경우 해당 메서드는 throws 키워드를 사용하여 선언되어야 합니다.
(2) throws 키워드는 메서드 서명 끝에 배치됩니다.
(3) throws는 함수에서 발생할 수 있는 예외만 호출자에게 선언할 뿐 예외 자체를 처리하지는 않습니다.
(4) 이러한 예외 처리를 사용하는 이유는 메서드 자체가 이 예외를 처리하는 방법을 모르거나 호출자가 처리하는 것이 더 좋고 예외에 대한 책임을 호출자가 부담해야 하기 때문일 수 있습니다. 그런 일이 일어날 수도 있습니다.
(5) 새로 인스턴스화되었거나 방금 포착된 예외를 throw 키워드를 사용하여 수동으로 발생시킬 수도 있습니다.
(6) throw 문 뒤에는 예외 개체가 와야 합니다.

위 내용은 Java의 예외 및 예외 처리에 대한 설명(그림 및 텍스트)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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