Concetti Chiave

  • Le eccezioni in Java gestiscono condizioni anomale durante l'esecuzione del programma, interrompendo il flusso normale in caso di errori.
  • Se un'eccezione non viene catturata, il metodo chiamante si interrompe e l'applicazione può bloccarsi se l'errore raggiunge il metodo main.
  • Le eccezioni sono oggetti della libreria java.lang.Exception e si dividono in controllate e incontrollate, a seconda della loro origine.
  • Le eccezioni controllate derivano da errori dell'utente, come il FileNotFound, e devono essere gestite dal programmatore.
  • Le eccezioni incontrollate, come NullPointerException e IndexOutOfBoundException, sono causate da errori del programmatore e non possono essere previste facilmente.

Le eccezioni Java sono utilizzate in quelle situazioni in cui sia necessario gestire condizioni anomale. Generalmente le eccezioni sono degli eventi che si scatenano durante l’esecuzione di un programma, causando l’interruzione del normale flusso di operazioni (ad esempio errori di programmazione come la divisione per zero o il malfunzionamento del sistema come un’errata connessione).

Gestione delle eccezioni non catturate

Nel caso in cui l’eccezione non sia sta catturata (Exception Catching) allora ogni metodo che non sappia gestire l’eccezione viene interrotto nel punto in cui aveva chiamato il metodo che sta propagando l’errore. Se la propagazione dell’errore avviene fino al metodo main allora l’applicazione si interrompe in maniera incontrollata.
Le eccezioni sono oggetti “throwable” racchiuse nella libreria java.lang.Exception, sottoclasse di java.lang.Throwable. Le eccezioni si dividono in Le Eccezioni Controllate costituiscono errori che dipendono dall’errato utilizzo dell’applicazione da parte dell’utente. Per questo motivo il programmatore deve prevedere il comportamento dell’utente e lanciare l’eccezione affinché tutto proceda bene anche se l’applicazione viene usata erroneamente. Un esempio è il FileNotFound o la divisione per zero da parte dell’utente.

Le Eccezioni Incontrollate sono invece errori dovuti alla scarsa abilità del programmatore. Tra queste vi sono numerose eccezioni predefinite da Java come:

- .NullPointerException = uso di un oggetto nullo ossia quando cerchiamo di fare un accesso illegale ad un oggetto null;

- .IndexOutOfBoundException = uso di indici errati per accedere a dati contenuti in strutture dati ordinate;

- .ArithmeticException = operazione aritmetica non consentita;

Domande da interrogazione

  1. Qual è la funzione principale delle eccezioni in Java?
  2. Le eccezioni in Java servono a gestire condizioni anomale che si verificano durante l'esecuzione di un programma, interrompendo il normale flusso di operazioni in caso di errori, come la divisione per zero o malfunzionamenti del sistema.

  3. Cosa succede se un'eccezione non viene catturata in Java?
  4. Se un'eccezione non viene catturata, ogni metodo che non sa gestirla viene interrotto, e se l'errore si propaga fino al metodo main, l'applicazione si interrompe in modo incontrollato.

  5. Qual è la differenza tra eccezioni controllate e incontrollate in Java?
  6. Le eccezioni controllate sono errori previsti dall'uso errato dell'applicazione da parte dell'utente, mentre le eccezioni incontrollate derivano da errori del programmatore, come NullPointerException o IndexOutOfBoundException.

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community