codice:
import java.util.*;
import java.io.*;

public class Spettacolo{
	// variabili (tipi primitivi)
	int nroPosti;
	int nroMaxAttesa;
	int nroPrenotazioni = 0;
	
	// ArrayList per la memorizzazione di oggetto di tipo Cliente
	ArrayList<Cliente> arrayPrenotazioni = new ArrayList<Cliente>();
	ArrayList<Cliente> arrayAttesa = new ArrayList<Cliente>();
	
	// Costruttore per l'inizializzazione di un oggetto di tipo Spettacolo
	public Spettacolo(int valPosti, int valAttesa){
		nroPosti = valPosti;
		nroMaxAttesa = valAttesa;
	}
	
	// Metodo "libero" che restituisce T se vi è ancora disponibilità di posti
	public boolean libero(){
		boolean aux_libero = false;
		
		if (!arrayPrenotazioni.isEmpty()){ 
			if (nroPosti-arrayPrenotazioni.size() > 0)
				aux_libero = true;
		}
		else
			aux_libero = true;
		return(aux_libero);
	}
	
	
	public void prenota(Cliente client){
		boolean aux_prenota;
		
		aux_prenota = this.libero();
		if(aux_prenota){
			arrayPrenotazioni.add(client);
			nroPrenotazioni++;
		}
		else
			if (arrayAttesa.size() < nroMaxAttesa)
				arrayAttesa.add(client);
			else System.out.println("Liste di prenotazione e di attesa piene.");
	}
	
	
	public int trova(Cliente client){
		int aux_trova = -1;
		
		if(arrayPrenotazioni.contains(client)) aux_trova = 0;
		else
			if(arrayAttesa.contains(client)) aux_trova = 1;
		return(aux_trova);
	}
	
	public void disdici(Cliente client){
		if(arrayPrenotazioni.contains(client)){
			if(!arrayAttesa.isEmpty()){
				arrayPrenotazioni.remove(arrayPrenotazioni.indexOf(client));
				arrayPrenotazioni.add(arrayAttesa.get(0));
				arrayAttesa.remove(0);
			}
			else{
				arrayPrenotazioni.remove(arrayPrenotazioni.indexOf(client));
				nroPrenotazioni--;
			}
		}
		else
			if(arrayAttesa.contains(client)) arrayAttesa.remove(arrayAttesa.indexOf(client));
			else System.out.println("Cliente non presente in nessuna lista.");
	}
	
	
	public boolean incompleto(Cliente client){
		boolean aux_incompleto = false;
		
		if((arrayPrenotazioni.contains(client)) && (arrayAttesa.contains(client)))	aux_incompleto = true;
		return(aux_incompleto);
	}
	
	
	public void salvaDati() throws IOException{
		FileWriter f = new FileWriter("fileoutput.txt"); 
		PrintWriter uscita = new PrintWriter(f); 
		//try{
		uscita.println("LISTA DELLE PRENOTAZIONI:");
		if (!arrayPrenotazioni.isEmpty()){
			for(int i=0; i < arrayPrenotazioni.size(); i++){
				uscita.print((i+1)+". ");
				uscita.print(arrayPrenotazioni.get(i).nominativo);
				uscita.print(" ");
				uscita.println(arrayPrenotazioni.get(i).telefono);
			}
		}
		else System.out.println("Vuota.");
		uscita.println("LISTA DI ATTESA:");
		if (!arrayAttesa.isEmpty()){
			for(int i=0; i < arrayAttesa.size(); i++){
				uscita.print((i+1)+". ");
				uscita.print(arrayAttesa.get(i).nominativo);
				uscita.print(" ");
				uscita.println(arrayAttesa.get(i).telefono);
			}
		}
		else System.out.println("Vuota");
		uscita.close();
		}
	
}
codice:
public class Cliente {

	String nominativo = new String();
	String telefono = new String();
	
	//Costruttore per l'inizializzazione di un oggetto Cliente
	public Cliente(){
		nominativo = "NUL";
		telefono = "NUL";
	}
	
	// Metodo per l'inserimento del campo Nominativo
	public void setNominativo(String nomCogn){
		nominativo = nomCogn;
	}
	
	// Metodo per l'inseriemnto del campo Telefono
	public void setTelefono(String numTel){
		telefono = numTel;
	}
		
}
mentre questo è il main
codice:
public class index {

	public static void main(String[] args) {
		
		Spettacolo S = new Spettacolo(3,1);
		
		Cliente client = new Cliente();
		client.setNominativo("G C");
		client.setTelefono("1");
		S.prenota(client);
		
		Cliente client1 = new Cliente();
		client1.setNominativo("C C");
		client1.setTelefono("2");
		S.prenota(client1);
		
		Cliente client2 = new Cliente();
		client2.setNominativo("A F");
		client2.setTelefono("3");
		S.prenota(client2);
		
		Cliente client3 = new Cliente();
		client3.setNominativo("V C");
		client3.setTelefono("4");
		S.prenota(client3);
		
		Cliente client4 = new Cliente();
		client4.setNominativo("T A");
		client4.setTelefono("5");
		S.prenota(client4);
		
		S.salvaDati();		
	}
}
L'errore restituito è il seguente:
codice:
Exception in thread "main" java.lang.Error: Unresolved compilation problem: 
	Unhandled exception type IOException

	at index.main(index.java:32)
Qualcuno saprebbe aiutarmi?