eccezioni personalizzate sono definiti nello stesso modo di qualsiasi altra classe Java . L'unica regola importante è che un'eccezione deve estendere la classe Exception in biblioteca java.lang . Questo è fatto nello stesso modo che qualsiasi altra classe estende un'altra . Un esempio di una definita dall'utente eccezione sarebbe :
classe
MyException extends Exception { }
È possibile aggiungere i propri metodi e costruttori per la classe di eccezione in modo da personalizzare ai tuoi scopi , ma semplicemente estendendo la classe base si ottengono i costruttori ei metodi di eccezioni standard, tra cui la possibilità di definire i messaggi di errore .
generando un'eccezione personalizzata
per usare il tuo eccezione personalizzata , dovete buttare in qualche parte del programma , lo stesso di qualsiasi altra eccezione . Ad esempio, l' esempio seguente mostra come generare un'eccezione per impedire un metodo di divisione per zero :
doppia divide pubblico ( doppio dividendo , doppio divisore) getta MyException {
se ( divisore == 0 ) throw new MyException ( " Divisione per zero tentato !") ;
ritorno dividendo /divisore ;
}
il problema di verificare se il divisore è uguale a zero . Se lo è , allora un nuovo oggetto MyException viene creata e generata con un messaggio di errore appropriato . Qualunque parte del programma ha chiamato la funzione "divario " sarebbe allora la responsabilità di decidere come affrontare l'eccezione .
Perché utilizzare le eccezioni ?
Errore controllo è una parte fondamentale di qualsiasi programma . Anche se il lavoro del programmatore è perfetto, l'input dall'utente , il file system locale e Internet è raramente, se mai , perfetto, per cui i programmi devono essere preparati ad affrontare i problemi. Spesso, tuttavia , la parte del codice che trova il problema non è la parte del codice più adatto per affrontare il problema . Una funzione che divide un paragrafo di testo in parole dovrebbe , idealmente , non devono preoccuparsi se un paragrafo vuoto è un errore che richiede di chiudere il programma , uno strano evento che dovrebbe essere segnalato all'utente , o irrilevanti . Le eccezioni permettono di segnalare il problema in altre parti del programma che sono più adatto a correggerlo .
Perché utilizzare le eccezioni personalizzate ?
Java viene fornito con decine di eccezioni classi predefinite , tuttavia, a volte aiuta ad avere un insieme di eccezioni che meglio si adattano il problema in esame , in modo che il programma può più rapidamente reagire ad essi . Ad esempio , piuttosto che di Java generico " InvalidArugmentException , " la parte del codice responsabile per il recupero da errori può essere necessario conoscere ulteriori dettagli sul problema . Ciò potrebbe essere fatto dividendo l'eccezione in personalizzato " UnexpectedNullArgumentException " e " OutOfRangeException . "
Programmazione © www.354353.com