Come creare eccezioni definite dall'utente in Java

August 16

eccezioni definite dall'utente consentono al programmatore di gestire gli errori nell'applicazione con le risposte personalizzate. La creazione di queste funzioni rende un'applicazione più facilmente comprensibile e facile da usare. La gestione degli errori è una parte di programmazione che viene normalmente dimenticato, ma offre agli utenti una migliore comprensione di ciò che è sbagliato con l'applicazione ed elimina molte delle frustrazioni da risposte di errore poveri.

istruzione

1 Creare guscio della funzione. Un'eccezione definito dall'utente è un'estensione della classe di eccezione interna. In questo esempio, l'eccezione è impostato per testare un numero difettoso nell'applicazione. Il codice seguente imposta la classe.
public class BadNumber estende Exception {
}

2 Impostare il costruttore. Il costruttore prende una variabile che viene utilizzato per comunicare all'utente che il numero non è corretto. Questo può essere qualsiasi variabile nell'applicazione che causa l'eccezione.
int myNumber privato
ANDARE

public BadNumber (int myNumber){
this.myNumber = myNumber

ANDARE
}

3 Creare la funzione che restituisce l'errore all'utente. Sull'Usabilità applicazioni include risposte chiare quando si verifica un errore. Questo codice imposta la risposta per l'utente per fargli sapere il numero inserito non è corretto. Questo viene aggiunto alla classe eccezione nei passaggi 1 e 2.
Public String toString () {

return \"Number cannot be negative\" + \" \" +myNumber

ANDARE

}

4 Testare la classe di eccezione. Quando si verifica un errore, il codice principale deve un'eccezione. In questo esempio, se l'utente inserisce un numero negativo, la funzione eccezione \ "BadNumber \" si chiama. Questo codice imposta la classe di test.
public class TestException {
}

5 Creare il codice per generare un'eccezione. Questo esempio chiama una funzione che restituisce un numero negativo che poi chiama il \ "BadNumber \" eccezione.
void main (String [] args) public static genera un'eccezione {

int myNumber = getNumber()

ANDARE

if (myNumber < 0){
throw new NegativeAgeException(myNumber)

ANDARE

}else{
System.out.println(\"Number is \" + myNumber)

ANDARE

}
}
static int getNumber(){
return -9

ANDARE

}