La gestione delle eccezioni in Java
Esercitazioni 1
Prerequisiti
Conoscenza della programmazione ad oggetti. Conoscenza, anche superficiale, della gestione delle eccezioni in Java.
Obiettivi
Comprensione della gestione delle eccezioni in Java con particolare attenzione alla:
- Sintassi delle keywords: try, catch, finally, throw e throws.
- Esempi di codice.
- Creazione di una nuova sottoclasse di Exception.
Indice
- Introduzione alla gestione delle eccezioni in Java.
- Cenni sulle keywords: try, catch, finally, throw, throws.
- Esempi di codice Java sulle eccezioni.
- Esercizi proposti.
“Badly-formed code will not be run.” B. Eckel
Le eccezioni in Java
Un'eccezione è un problema che impedisce il proseguimento dell’esecuzione di un metodo in quanto non si hanno le informazioni necessarie nel contesto corrente. Una possibile soluzione può essere quella di uscire dal contesto attuale e cercare di risolvere il problema in un contesto di livello più elevato. Poiché la gestione delle eccezioni è forzata dal compilatore Java, sono pochi gli esempi di programmi che possono essere scritti senza utilizzare correttamente la gestione delle eccezioni.
Keywords: Try, Catch, Finally, Throws, Throw
- Unchecked
- Checked
Le eccezioni in Java: esempio
Class java.io.FileNotFoundException
- java.lang.Object
- java.lang.Throwable
- java.lang.Exception
- java.io.IOException
- java.io.FileNotFoundException
public class FileNotFoundException extends IOException segnala che un file non può essere trovato.
Le eccezioni in Java: esempio
FileNotFoundException
public FileNotFoundException() costruisce una eccezione di tipo FileNotFoundException senza alcun messaggio esplicativo.
FileNotFoundException
public FileNotFoundException(String s) costruisce una eccezione di tipo FileNotFoundException con un messaggio esplicativo.
- Parameters: s: il messaggio.
Classe Throwable: principali metodi
- getMessage public String getMessage() Returns: the detail message of this Throwable, or null if this Throwable does not have a detail message.
- toString public String toString() Returns a short description of this throwable object.
- printStackTrace public void printStackTrace() Prints this Throwable and its backtrace to the standard error stream.
Lanciare una eccezione: throw
Supponiamo di avere un handle t non inizializzato e di volere impedire che esso possa essere usato come argomento di un metodo.
if(t == null) throw new NullPointerException();
Lanciare una eccezione consente di evitare di trattare un problema nel contesto corrente.
Lanciare una eccezione: throw
Quando una eccezione viene lanciata, viene creato un oggetto della classe Exception o di una sua sottoclasse. Oltre a quello già visto, c’è un altro costruttore che ha per argomento una stringa che può essere usata per dare informazioni sull’eccezione.
if(t == null) throw new NullPointerException(" t non è inizializzato ");
La parola chiave throws
Specificazione delle eccezioni: Java richiede che chi scrive un metodo debba esplicitamente indicare se esso può eventualmente sollevare delle eccezioni. Il metodo seguente:
void f(){ // ... }
Non solleverà alcuna eccezione tranne quelle di tipo Runtime Exception.
La parola chiave throws
Nel caso in cui f() dovesse sollevare eccezioni di tipo...
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
-
Metodi ausiliari progettare classi eccezioni java
-
Programmazione - programmazione Java 2
-
Java - parte 2/2
-
Libreria di built-in in Jena per la gestione del tempo nelle ontologie