Ho un problema. la mia applicazione java dovrebbe salvare una classe GiocatoreUmano che è estensione di una classe Giocatore. Questa ha dei metodi protected.
il codice viene compilato ma in fase di caricamento non funziona. mi da errore nell i/o.

codice:
// Restituisce true se si vuole un'altra carta durante la propria mano
	// @param g attributo di tipo Giocatore, puntoAvversario di tipo double, matta di tipo boolean
	// @return un booleano
	public boolean mano(Giocatore g, double puntoAvversario, boolean matta) {
			
			return g.altraCarta(puntoAvversario, matta);
		}
	
	// Salva lo stato della partita corrente
	// @param nomeFile attributo di tipo String
	public void salva (String nomeFile) {
		
			try{
				
				FileOutputStream outFile = new FileOutputStream(PATH_SAVE + nomeFile + ".sav");
				ObjectOutputStream outStream = new ObjectOutputStream(outFile);
				
				outStream.writeObject(this.Sfidante);
				outStream.writeObject(new Integer(this.Credito));
				outStream.close();
				video.stampaMsg("Partita Salvata con successo!");
			
			}catch(IOException exc){
			
				video.stampaMsg("Errore nell'I/O. Partita non Salvata!");
			}
		}
	
	// Carica lo stato di una partita precedentemente salvata
	// @param nomeFile attributo di tipo String
	public void carica (String nomeFile) {

			try{
				
				FileInputStream inFile = new FileInputStream(PATH_SAVE + nomeFile + ".sav");
				ObjectInputStream inStream = new ObjectInputStream(inFile);
				
				try{
					
					this.Sfidante = (GiocatoreUmano)inStream.readObject();
					this.Credito = ((Integer)inStream.readObject()).intValue();
				
				}catch(ClassNotFoundException exc){
					
					video.stampaMsg("Classi non trovate!");
					System.exit(1);
				}
				
				inStream.close();
				
			}catch(IOException exc){
				
				video.stampaMsg("Errore nell'I/O. Partita non Caricata!");
				System.exit(1);
			}
			
			video.stampaMsg("Partita Caricata con successo!");
		}
aiuto!!!!