Erro agenda ( conforme sugestão )

Erros: consigo cadastrar mais não consigo ler, da o seguinte erro:

java.lang.ArrayIndexOutOfBoundsException: 0
at Editor.main(Editor.java:32)

abaixo segue o modulo construtor, e o modulo menu.

ha e também queria ter uma ideia de como excluir um registro cadastrado.

modulo construtor

import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;

public class Agenda implements Serializable {
private String Nome;
private String Endereco;
private String Telefone;

//--------------------------------------------
// Grava os dados
//--------------------------------------------
  private void writeObject(ObjectOutputStream s) throws Exception{
  	s.defaultWriteObject();
  	s.writeObject(getNome());
  	s.writeObject(getEndereco());
  	s.writeObject(getTelefone());
  }
//--------------------------------------------
// Lê os dados
//--------------------------------------------
  private void readObject( ObjectInputStream s) throws Exception{
  	s.defaultReadObject();
  	setNome((String)s.readObject());
  	setEndereco((String)s.readObject());
  	setTelefone((String)s.readObject());
  }
//--------------------------------------------
// entrada zerada
//--------------------------------------------
  public Agenda() {
	setNome("sem  nome");
	setEndereco("sem endereço");
	setTelefone("sem telefone");
  }
//--------------------------------------------
// entrada com valores
//--------------------------------------------
  public Agenda(String mNome, String mEndereco, String mTelefone){
	setNome(mNome);
	setEndereco(mEndereco);
	setTelefone(mTelefone);
  }
//---------------------------------------
// Metodos set
//---------------------------------------
  public void setNome(String mN) {
	String tmp = mN.toUpperCase().trim();
	if (tmp.equals("")){ 
		System.out.println("Nome inválido"); 
		Nome = "";}
	else {
	    Nome = tmp; }
  }

  public void setEndereco(String mE) {
    String tmp = mE.toUpperCase().trim();
    if (tmp.equals("")){ 
    	System.out.println("Endereço inválido"); 
    	Endereco = "";}
    else {
    Endereco = tmp;}
  }

  public void setTelefone(String mT) {
    String tmp = mT.toUpperCase().trim();
    if (tmp.equals("")){ 
    	System.out.println("Telefone inválido"); 
    	Telefone = "";}
    else {
    Nome = tmp;}
  }

//---------------------------------------
// Metodos get
//---------------------------------------
  public String getNome()      { return Nome; }

  public String getEndereco()  { return Endereco;}

  public String getTelefone()  { return Telefone;}

  //---------------------------------------
  // Metodos toString / Saida formatada
  //---------------------------------------
    public String toString() {
  	String tS = "";
  	tS = Nome + "\n"+Endereco+"\n"+Telefone+"\n";
  	return tS;
    }
  //---------------------------------------
  // Metodos toString / Saida formatada
  // com identificação do campo
  //---------------------------------------
    public String toStringIdent() {
   	  String tS = "";
      tS = "Nome......:"+Nome    +"\n"+
	       "Endereço..:"+Endereco+"\n" +
		   "Matricula.:"+Telefone+"\n";
      return tS;
    }

}

modulo menu

/*

  • Created on 12/08/2005
  • TODO To change the template for this generated file go to
  • Window - Preferences - Java - Code Style - Code Templates
    */

/**

  • @author Ailson
  • TODO To change the template for this generated type comment go to
  • Window - Preferences - Java - Code Style - Code Templates
    /
    import java.io.
    ;
    import java.util.Vector;
    import javax.swing.*;

public class AgendaMenu {
static Vector vet = new Vector();
public static void main(String[] args) {
Agenda magenda = new Agenda();
try{
int op=0;
while(op!=5){
op = Integer.parseInt(JOptionPane.showInputDialog(“1 - INCLUIR \n” +
“2 - EXCLUIR \n” +
“3 - GRAVAR \n” +
“4 - LISTAR \n\n” +
“5 - SAIR”));
if(op==1){ incluir(); };
//if(op==2){ excluir(); }
//if(op==3){ gravar(); }
if(op==4){ listar(); }
}
}catch(Exception ex){
System.out.println(“Erro:”+ex+"-"+args[0]);
}
System.exit(0);
}
//---------------------------------------------
// função pra listar
//---------------------------------------------
public static void listar() throws Exception{
FileInputStream f2 = new FileInputStream(“c:/agenda.reg”);
ObjectInputStream in = new ObjectInputStream(f2);
Vector vet = (Vector) in.readObject();

	for(int i=0;i<vet.size();i++){
		System.out.println(((Agenda)vet.get(i)).toString());
	}
	f2.close();
	in.close();
  }
//---------------------------------------------
// função pra listar
//---------------------------------------------
  public static void incluir() throws Exception{
	Agenda a = new Agenda();
	a.setNome(JOptionPane.showInputDialog("Nome:"));
	a.setEndereco(JOptionPane.showInputDialog("Endereço:"));
	a.setTelefone(JOptionPane.showInputDialog("Telefone:"));
	
	vet.addElement(a);
	FileOutputStream f = new FileOutputStream("c:/agenda.reg"); 
	ObjectOutputStream s = new ObjectOutputStream(f);
	s.writeObject(vet);
	s.flush();	
	
	f.close();
	s.close();
	
  }

}