그만큼 Java가 키워드를 던졌습니다. 예외를 선언하는 데 사용됩니다. 예외가 발생할 수 있다는 정보를 프로그래머에게 제공합니다. 따라서 프로그램의 정상적인 흐름이 유지될 수 있도록 프로그래머가 예외 처리 코드를 제공하는 것이 좋습니다.
예외 처리는 주로 확인된 예외를 처리하는 데 사용됩니다. NullPointerException과 같은 확인되지 않은 예외가 발생하는 경우 코드를 사용하기 전에 확인하지 않은 것은 프로그래머의 잘못입니다.
브라우저 설정은 어디에 있나요
Java throw 구문
return_type method_name() throws exception_class_name{ //method code }
어떤 예외를 선언해야 합니까?
연령: 다음과 같은 이유로 예외만 확인되었습니다.
Java의 장점은 키워드를 던졌습니다.
이제 Checked Exception을 전파할 수 있습니다(호출 스택에서 전달).
예외에 대한 정보를 메서드 호출자에게 제공합니다.
Java가 예제를 던졌습니다.
검사된 예외가 throws 키워드에 의해 전파될 수 있음을 설명하는 Java throws 절의 예를 살펴보겠습니다.
Testthrows1.java
import java.io.IOException; class Testthrows1{ void m()throws IOException{ throw new IOException('device error');//checked exception } void n()throws IOException{ m(); } void p(){ try{ n(); }catch(Exception e){System.out.println('exception handled');} } public static void main(String args[]){ Testthrows1 obj=new Testthrows1(); obj.p(); System.out.println('normal flow...'); } }지금 테스트해보세요
산출:
exception handled normal flow...
규칙: 예외를 선언하는 메서드를 호출하는 경우 예외를 포착하거나 선언해야 합니다.
두 가지 경우가 있습니다:
사례 1: try-catch 블록을 사용하여 예외 처리
예외를 처리하는 경우 프로그램 도중 예외가 발생하든 안 발생하든 코드는 정상적으로 실행됩니다.
자바 문자열 연결
Testthrows2.java
import java.io.*; class M{ void method()throws IOException{ throw new IOException('device error'); } } public class Testthrows2{ public static void main(String args[]){ try{ M m=new M(); m.method(); }catch(Exception e){System.out.println('exception handled');} System.out.println('normal flow...'); } }지금 테스트해보세요
산출:
exception handled normal flow...
사례 2: 예외 선언
- 예외를 선언한 경우 예외가 발생하지 않으면 코드는 정상적으로 실행됩니다.
- 예외를 선언하고 예외가 발생하면 런타임에 예외가 발생합니다. 던진다 예외를 처리하지 않습니다.
두 시나리오에 대한 예를 살펴보겠습니다.
자바 연결
가) 예외가 발생하지 않는 경우
Testthrows3.java
import java.io.*; class M{ void method()throws IOException{ System.out.println('device operation performed'); } } class Testthrows3{ public static void main(String args[])throws IOException{//declare exception M m=new M(); m.method(); System.out.println('normal flow...'); } }지금 테스트해보세요
산출:
device operation performed normal flow...
나) 예외가 발생한 경우
Testthrows4.java
import java.io.*; class M{ void method()throws IOException{ throw new IOException('device error'); } } class Testthrows4{ public static void main(String args[])throws IOException{//declare exception M m=new M(); m.method(); System.out.println('normal flow...'); } }지금 테스트해보세요
산출:
던지기와 던지기의 차이점
자세한 내용을 보려면 나를 클릭하세요.Que) 예외를 다시 발생시킬 수 있나요?
예, catch 블록에서 동일한 예외를 발생시킵니다.