java
Java throw 키워드 프로그램 실행 중에 발생할 수 있는 예외 정보를 선언하는 데 사용됩니다. 프로그래머에게 예외에 대한 정보를 제공합니다. 프로그램 실행의 정상적인 흐름을 유지할 수 있도록 예외 처리 코드를 제공하는 것이 좋습니다.
Java 프로그램에서 예외를 발생시키는 라이브러리 메소드를 사용한다고 가정합니다.
프로그램에서 try &catch를 사용하여 이 예외를 처리합니다.
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){} } }
try catch 블록에서 예외를 처리하지 않으면 컴파일이 실패합니다. 그러나 Java 라이브러리의 거의 모든 다른 메소드 또는 사용자 정의조차도 예외를 던질 수 있습니다.
try 및 catch 블록을 사용하여 모든 예외를 처리하는 것은 번거로울 수 있으며 코더의 처리량을 방해합니다.
따라서 Java는 메소드 정의에서 위험한 코드를 사용할 때마다 던짐을 선언하는 옵션을 제공합니다. try catch를 구현하지 않은 예외입니다.
method (Arguments) throws Exception1,Exception2,Exception,… {}
메소드 선언에서 throw를 사용하여 위와 동일한 예를 고려하십시오.
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인 빈 텍스트 파일을 만드십시오. 요약하면 예외를 처리하는 두 가지 방법이 있습니다.
위의 두 가지 중 하나가 수행되지 않으면 컴파일러에서 오류가 발생합니다. 이 규칙을 시행하는 배경은 프로그래머가 특정 코드가 위험할 수 있고 예외가 발생할 수 있다는 것을 인식한다는 것입니다.
던지기 | 던지기 |
---|---|
새로운 Exception 객체를 생성하고 던질 때 사용합니다. | 메소드 정의에서 위험한 메서드가 호출되고 있음을 선언하는 데 사용됩니다. |
throw 키워드를 사용하면 한 번에 하나의 예외만 선언할 수 있습니다. | throw 키워드를 사용하면 한 번에 여러 예외를 선언할 수 있습니다. |
예: throw new IOException("연결을 열 수 없습니다"); | 예: IOException, ArrayIndexBoundException 발생, |
'자바 throw 키워드' 예외를 선언하는 데 사용됩니다. 예외를 "던질" 모든 메서드의 경우 호출 메서드에서 throw를 사용하여 throw된 예외를 나열하는 것이 필수입니다.
java
자바에서 리플렉션이란 무엇입니까? Java Reflection은 런타임에 클래스의 모든 기능을 분석하고 수정하는 프로세스입니다. Java의 Reflection API는 런타임에 필드, 메소드, 생성자 등을 포함하는 클래스 및 해당 멤버를 조작하는 데 사용됩니다. Java에서 리플렉션 API의 한 가지 장점은 클래스의 private 멤버도 조작할 수 있다는 것입니다. java.lang.reflect 패키지는 리플렉션을 구현하는 많은 클래스를 제공합니다. java.lang.Class 클래스의 java.Methods는 특정 클래스의
예외(또는 예외적인 이벤트)는 프로그램 실행 중에 발생하는 문제입니다. 예외가 발생한 경우 발생하면 프로그램의 정상적인 흐름이 중단되고 프로그램/응용 프로그램이 비정상적으로 종료되므로 권장하지 않으므로 이러한 예외를 처리해야 합니다. 예외는 여러 가지 이유로 발생할 수 있습니다. 다음은 예외가 발생하는 몇 가지 시나리오입니다. 사용자가 잘못된 데이터를 입력했습니다. 열어야 할 파일을 찾을 수 없습니다. 통신 도중 네트워크 연결이 끊겼거나 JVM의 메모리가 부족합니다. 이러한 예외 중 일부는 사용자 오류로 인해