Introduzione al lancio di parole chiave in Java

Questa parola chiave Throw è ampiamente utilizzata nel concetto di gestione delle eccezioni. Come già suggerisce il nome, buttare la parola chiave significa buttare un'eccezione dal programma al compilatore. Briefing su eccezione; è un tipo di errore che un compilatore viene espulso dal programma in caso di discrepanza durante il runtime del codice. Quindi, utilizzando questa parola chiave di lancio, possiamo definire la nostra eccezione interpretando qualsiasi causa di errori durante il runtime del programma.

Vediamo più dettagli al di sotto:

Sintassi

La sintassi di lancio in Java è come di seguito:

throw exception_type ;

o

throw instance;

Lavorare in Java

Possiamo qui controllare come viene effettivamente utilizzata la parola chiave e capire come funziona effettivamente il flusso attraverso un esempio.

import java.util.Scanner;
public class Main
(
public static void main(String() args) (
int c;
Scanner sc = new Scanner(System.in);
System.out.println("Enter value of A: ");
int a = sc.nextInt();
//Scanner b = new Scanner(System.in);
System.out.println("Enter value of B: ");
int b = sc.nextInt();
try (
c= a/b;
if(b==0)
(
throw new ArithmeticException();
)
System.out.println("Value of C is: " +c);
)
catch(ArithmeticException e) (
System.out.println("Caught this here");
)
finally (
)
System.out.println("Finally block is here");
)
)

Affrontiamolo con un classico e semplice esempio di divisione per zero.

Analizzando il codice qui sotto:

  • In primo luogo, abbiamo importato il modulo Scanner per prendere i valori di input dell'utente.
  • Leggiamo due numeri, vale a dire "A" e "B", che vengono forniti come input all'utente.
  • Abbiamo dichiarato una variabile 'C' per memorizzare il valore del quoziente dopo la divisione del numero 'A' per 'B'.
  • Poiché i numeri possono essere dati in modo casuale dall'utente, possiamo pensare a una situazione in cui un utente può dare il divisore come zero.
  • Accettando quello scenario, scriviamo il nostro codice di divisione in un blocco try.
  • E scrivendo se una condizione che nel caso in cui il valore 'B' abbia zero, allora stiamo generando un'eccezione.
  • Try sarebbe sempre seguito da un blocco catch.
  • Quindi, qui stiamo citando l'eccezione che abbiamo definito usando un nuovo comando con il lancio di parole chiave.
  • La stessa eccezione è stata colta e, abbiamo appena stampato una dichiarazione sotto per fare una chiara comprensione nel raggiungere il flusso del tentativo, lancio, cattura e infine.
  • E infine, stiamo dichiarando il nostro blocco finalmente. Come già noto, le istruzioni in questo blocco verranno sicuramente eseguite.

Controlliamo l'output di seguito.

Uscita 1: se il valore b non è zero.

Possiamo vedere chiaramente che non c'è nessun tentativo, lancio e cattura blocchi eseguiti poiché il valore 'B' è diverso da zero. E infine, il blocco è stato eseguito indipendentemente dalla creazione dell'eccezione.

Uscita 2: se il valore b è zero.

La parte evidenziata si assicura che l'eccezione venga generata e catturata correttamente dal blocco catch.

Quindi, vediamo un esempio di seguito.

Esempio:

Vediamo un modo in cui possiamo generare più eccezioni in un singolo programma.

public class Main
(
public static void main(String() args) (
String sun() = ("chocolate", "honey", "sugar", "sweet", "bitter");
String h = null;
try (
for (int i=0; i<=7; i++)
(
if(i > sun.length)
(
throw new ArrayIndexOutOfBoundsException();
)
System.out.println(sun(i));
)
)
catch(ArrayIndexOutOfBoundsException ae)
(
System.out.println("Inside array index out of bounds exception catch block");
)
try(
sun(0)=h;
if (sun(0) == null)
(
throw new NullPointerException();
)
System.out.println("Value of sun(0) is: " +sun(0));
)
catch(NullPointerException f)
(
System.out.println("Caught Null point exception");
)
finally (
System.out.println("executing finally");
)
)
)

Sopra, abbiamo usato due diversi tipi di eccezioni e usato la parola chiave throw per interpretare il programma. L'indice di matrice fuori limite e l'eccezione del puntatore Null è ciò che abbiamo usato qui in un singolo programma.

Produzione:

Importanza del tiro

Questa parola chiave di lancio ci aiuterebbe a fungere da ponte tra i blocchi try e catch. Aiuterà a trasferire il controllo del programma dal blocco try al blocco catch.

Lascia che ti mostri un esempio di come funziona un programma con e senza l'uso della parola chiave throw.

public class Main
(
public static void main(String() args) (
try (
int a = Integer.parseInt ("Happy") ;
System.out.println("Will this get printed?");
) catch(NumberFormatException e) (
System.out.println("Number format exception of catch block");
)
System.out.println("Priting after catch block");
)
)

Abbiamo scritto codice, senza la parola chiave throw. Ma abbiamo usato il codice in try and catch block, che in realtà gestirà l'eccezione. Quindi conosci l'output di quanto sopra?

Previsto giusto? Quindi, ha eseguito il codice, ha trovato un'eccezione e l'eccezione viene rilevata.

Ora, come funziona il codice quando inseriamo la nostra dichiarazione di lancio? Vediamo sotto.

public class Main
(
public static void main(String() args) (
try (
int a = Integer.parseInt ("Happy") ;
throw new NumberFormatException();
System.out.println("Will this get printed?");
) catch(NumberFormatException e) (
System.out.println("Number format exception of catch block");
)
System.out.println("Priting after catch block");
)
)

Solo la parte evidenziata è la modifica tra i due codici sopra.

Produzione:

Sì, abbiamo riscontrato un errore di compilazione poiché l'istruzione print dopo che la parola chiave throw è un'istruzione irraggiungibile. Con questo esempio, speriamo che tu abbia capito esattamente cosa significava "trasferire il controllo dal tentativo di catturare il blocco".

Come esercizio, prova a rimuovere l'istruzione print dopo aver lanciato la parola chiave, controlla come reagisce il programma.

Conclusione: lancia la parola chiave in Java

Quindi, è così che il comando di lancio è entrato in scena al momento della gestione delle eccezioni. E nota che c'è una buona differenza tra la parola chiave THROW e THROWS. Entrambi sono usati con il concetto di eccezioni. Conosciamo già il concetto, come e dove effettivamente possiamo usare la parola chiave "THROW". Fai pratica e prova ad usarlo in diversi modi. Continua a imparare.

Articoli consigliati

Questa è una guida per lanciare parole chiave in Java. Qui discutiamo dell'introduzione, del lavoro in Java e dell'importanza del tiro. Puoi anche consultare i nostri altri articoli suggeriti per saperne di più -

  1. Parola chiave protetta in Java
  2. Per Loop in JavaScript
  3. Mentre Loop in Java
  4. Continua Dichiarazione in Java
  5. Continua il lavoro di istruzione in C # con esempi

Categoria: