A Java, les excepcions ens permeten escriure codis de bona qualitat on els errors es comproven en el moment de la compilació en lloc del temps d'execució i podem crear excepcions personalitzades facilitant la recuperació i la depuració del codi.
paraula clau de llançament de Java
La paraula clau Java throw s'utilitza per llançar una excepció de manera explícita.
inclou programació en c
Especifiquem el excepció objecte que s'ha de llançar. L'excepció té algun missatge que proporciona la descripció de l'error. Aquestes excepcions poden estar relacionades amb les entrades de l'usuari, el servidor, etc.
Podem llançar excepcions marcades o no marcades a Java mitjançant la paraula clau throw. S'utilitza principalment per llançar una excepció personalitzada. Analitzarem les excepcions personalitzades més endavant en aquesta secció.
També podem definir el nostre propi conjunt de condicions i llançar una excepció explícitament mitjançant la paraula clau throw. Per exemple, podem llançar ArithmeticException si dividim un nombre per un altre. Aquí, només hem d'establir la condició i llançar l'excepció mitjançant la paraula clau throw.
La sintaxi de la paraula clau Java throw es mostra a continuació.
llançar instància, és a dir,
throw new exception_class('error message');
Vegem l'exemple de llançar IOException.
throw new IOException('sorry device error');
Quan la instància ha de ser del tipus Throwable o subclasse Throwable. Per exemple, Exception és la subclasse de Throwable i les excepcions definides per l'usuari solen ampliar la classe Exception.
Exemple de paraula clau de llançament de Java
Exemple 1: llançament d'una excepció no marcada
En aquest exemple, hem creat un mètode anomenat validate() que accepta un nombre enter com a paràmetre. Si l'edat és menor de 18 anys, estem llançant l'ArithmeticException, en cas contrari imprimiu un missatge de benvinguda per votar.
TestThrow1.java
quines són les dimensions de la pantalla del meu ordinador
En aquest exemple, hem creat el mètode validate que pren un valor enter com a paràmetre. Si l'edat és menor de 18 anys, estem llançant l'ArithmeticException, en cas contrari imprimiu un missatge de benvinguda per votar.
public class TestThrow1 { //function to check if person is eligible to vote or not public static void validate(int age) { if(age<18) { throw arithmetic exception if not eligible to vote new arithmeticexception('person is vote'); } else system.out.println('person vote!!'); main method public static void main(string args[]){ calling the function validate(13); system.out.println('rest of code...'); < pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/exception-handling/63/java-throw-exception.webp" alt="Java throw keyword"> <p>The above code throw an unchecked exception. Similarly, we can also throw unchecked and user defined exceptions.</p> <h4>Note: If we throw unchecked exception from a method, it is must to handle the exception or declare in throws clause.</h4> <p>If we throw a checked exception using throw keyword, it is must to handle the exception using catch block or the method must declare it using throws declaration.</p> <h3>Example 2: Throwing Checked Exception</h3> <h4>Note: Every subclass of Error and RuntimeException is an unchecked exception in Java. A checked exception is everything else under the Throwable class.</h4> <p> <strong>TestThrow2.java</strong> </p> <pre> import java.io.*; public class TestThrow2 { //function to check if person is eligible to vote or not public static void method() throws FileNotFoundException { FileReader file = new FileReader('C:\Users\Anurati\Desktop\abc.txt'); BufferedReader fileInput = new BufferedReader(file); throw new FileNotFoundException(); } //main method public static void main(String args[]){ try { method(); } catch (FileNotFoundException e) { e.printStackTrace(); } System.out.println('rest of the code...'); } } </pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/exception-handling/63/java-throw-exception-2.webp" alt="Java throw keyword"> <h3>Example 3: Throwing User-defined Exception</h3> exception is everything else under the Throwable class. <p> <strong>TestThrow3.java</strong> </p> <pre> // class represents user-defined exception class UserDefinedException extends Exception { public UserDefinedException(String str) { // Calling constructor of parent Exception super(str); } } // Class that uses above MyException public class TestThrow3 { public static void main(String args[]) { try { // throw an object of user defined exception throw new UserDefinedException('This is user-defined exception'); } catch (UserDefinedException ude) { System.out.println('Caught the exception'); // Print the message from MyException object System.out.println(ude.getMessage()); } } } </pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/exception-handling/63/java-throw-exception-3.webp" alt="Java throw keyword"> <hr></18)>
Sortida:
Exemple 3: llançament d'excepcions definides per l'usuari
l'excepció és tota la resta de la classe Throwable.TestThrow3.java
// class represents user-defined exception class UserDefinedException extends Exception { public UserDefinedException(String str) { // Calling constructor of parent Exception super(str); } } // Class that uses above MyException public class TestThrow3 { public static void main(String args[]) { try { // throw an object of user defined exception throw new UserDefinedException('This is user-defined exception'); } catch (UserDefinedException ude) { System.out.println('Caught the exception'); // Print the message from MyException object System.out.println(ude.getMessage()); } } }
Sortida:
18)>