Come creare un'eccezione definita dall'utente in Java

Come creare un'eccezione definita dall'utente in Java
Un errore di runtime che si verifica mentre viene eseguito un processo è un'eccezione. Il programma termina bruscamente quando si verifica un'eccezione e il codice dopo la riga che ha causato l'eccezione non verrà eseguita. In Java, classi di eccezioni come Aritmeticexception e NullpointerException sono già definite in "Eccezione" classe. Tuttavia, puoi fare un'eccezione definita dall'utente in Java e utilizzare la parola chiave di lancio con loro.

Questo manuale insegnerà il metodo per creare eccezioni definite dall'utente Java.

Come creare un'eccezione definita dall'utente in Java?

In Java, puoi creare un'eccezione e lanciarla utilizzando il "gettare" parola chiave. Eccezioni definite dall'utente o personalizzate sono i nomi dati a queste eccezioni.

Per creare un'eccezione definita dall'utente, in primo luogo, estenderai la classe con "Eccezione"Classe e quindi utilizzare uno dei metodi di seguito:

  • metodo getMessage ()
  • Metodo toString ()

Comprendiamo entrambi i metodi per la creazione di eccezioni definite dall'utente con esempi.

Metodo 1: Crea un'eccezione definita dall'utente nel metodo Java utilizzando GetMessage ()

In questa sezione, useremo un "getMessage ()"Metodo per lanciare un'eccezione con il"gettare" parola chiave. Passeremo una stringa che viene utilizzata come eccezione al costruttore del genitore "Eccezione"Classe invocando il"super()"Metodo nel costruttore di classe attuale.

Sintassi

Seguire la sintassi data per l'eccezione definita dall'utente:

obj.getMessage ();

Esempio 1

Innanzitutto, estenderemo la nostra classe a "Eccezione"Classe, quindi crea un costruttore parametrizzato che prende una stringa che verrà lanciata come eccezione. Nel costruttore del "Esempio"Classe, passeremo il parametro del tipo di stringa"S"E chiama il"super()"Metodo con argomento"S"Questo viene passato a un costruttore della classe genitore:

PubliceXample (String S)

super (s);

Nel metodo principale (), prima creeremo un oggetto della classe e passeremo una stringa come argomento perché la classe contiene un costruttore parametrizzato. Quindi, lancia un'eccezione con l'oggetto della classe. Queste operazioni verranno aggiunte in un blocco di cattura. Successivamente, nel blocco Catch, chiameremo il metodo getMessage () per stampare il messaggio passato alla classe di eccezione principale utilizzando il metodo Super ():

publicStaticVoidMain (String [] args)
Tentativo
Esempio ex = nuovo esempio ("voce non valida");
lanciare ex;
catch (Esempio E)
Sistema.fuori.println ("Eccezione catturata");
Sistema.fuori.println (e.getMessage ());

Viene lanciata l'eccezione definita dall'utente:

Non è obbligatorio passare una stringa a una classe genitore usando il metodo Super (), è anche possibile creare un'eccezione definita dall'utente chiamando il costruttore di un genitore senza passare alcun parametro.

Esempio 2

In questo esempio, creeremo un'eccezione definita dall'utente senza stampare alcun messaggio. Qui, in primo luogo, creeremo un "UserDefinedException"Classe che si estende al"Eccezione" classe:

Class UserDefinedException estende l'eccezione

Nel metodo principale () di "Esempio"Classe, lanceremo un'eccezione creando un nuovo oggetto della classe di eccezione definita dall'utente. Nel blocco catch, chiameremo il metodo getMessage () per stampare il messaggio; Tuttavia, non ne verrà stampata nessuno perché non ci passeremo alcun messaggio:

publicclassexample
publicStaticVoidMain (String [] args)
Tentativo
lanciata UserDefinedException ();
catch (userDefinedException ue)
Sistema.fuori.println ("Eccezione catturata");
Sistema.fuori.println (ue.getMessage ());


Produzione

Vediamo come possiamo stampare i dettagli delle eccezioni piuttosto che specificarlo nel costruttore della classe genitore.

Metodo 2: Crea un'eccezione definita dall'utente utilizzando il metodo Tostring ()

Se si desidera stampare alcuni dettagli relativi all'eccezione, usa "accordare()" metodo.

Sintassi

Utilizzare la sintassi data per la stampa del messaggio in eccezione definita dall'utente:

public String toString ()
return ("messaggio");

Esempio

Qui, creeremo un metodo ToString () nella classe di eccezioni definita dall'utente chiamato "UserDefinedException“Estendendolo con un"Eccezione" classe. Il metodo restituirà la stringa che verrà stampata:

ClassUserDefinedExceptionExtendSexception
public String toString ()
restituzione ("L'eccezione è avvenuta");

Nel metodo principale (), chiameremo l'eccezione usando il "gettare"Parola chiave creando un nuovo oggetto della classe definita dall'utente in un blocco di prova:

publicclassexample
publicStaticVoidMain (String [] args)
Tentativo
lanciata UserDefinedException ();
catch (userDefinedException ue)
Sistema.fuori.println ("Eccezione catturata");
Sistema.fuori.println (ue);


Produzione

Abbiamo compilato tutti i modi per creare un'eccezione definita dall'utente in Java.

Conclusione

Per la creazione di un'eccezione definita dall'utente in Java, estenderai prima la classe alla classe di eccezione, quindi usi due metodi GetMessage () e ToString (). Questi metodi vengono utilizzati per stampare i messaggi come eccezione. Il metodo getMessage () stampa il messaggio passato al costruttore della classe principale, mentre il metodo Tostring () restituisce la stringa che verrà utilizzata come messaggio di eccezione. In questo manuale, abbiamo spiegato i metodi per la creazione di un'eccezione definita dall'utente Java con esempi.