IniziaInizia gratis

Usare finally in un esempio reale

I blocchi finally sono generalmente usati per chiudere e ripulire risorse, come un database o un file, che sono in uso — indipendentemente dal flusso normale o dal fatto che si sia verificata un’eccezione.

Qui simulerai l’apertura di un file, la scrittura di testo nel file e la chiusura del file — tutto tramite chiamate a metodi. Userai finally per chiudere il file simulato a prescindere dal fatto che si verifichi o meno un’eccezione.

Questo esercizio fa parte del corso

Tipi di dati ed eccezioni in Java

Visualizza il corso

Istruzioni dell'esercizio

  • Apri un blocco try attorno al codice che apre un file e scrive nel file
  • Intercetta qualsiasi eccezione che potrebbe verificarsi nell’apertura del file simulato e nella scrittura del testo.
  • Aggiungi un blocco finally per chiudere il file simulato: verrà eseguito sia se il programma procede senza problemi sia se si verifica un’eccezione durante l’apertura o la scrittura sul file.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

public class FinallyCleanup {

	public static void main(String[] args) {
		String[] words = { "Lorem", "ipsum", "dolor", "sit", "amet" };
		// Open a try block
		____ {
			open();
			for (int i = 0; i <= words.length; i++) {
				writeToFile(words[i]);
			}
		// Catch any possible exception
		} ____ (____ ____) {
			System.out.println("Problem writing words to file");
		// Add a finally block to close the file
		} ____ {
			close();
		}
	}

	public static void open() {
		System.out.println("Our file is open");
	}

	public static void close() {
		System.out.println("Our file is closed");
	}

	public static void writeToFile(String text) {
		System.out.println(text + " has been written to the file");
	}
}
Modifica ed esegui il codice