oddio scusami...ma mi è sempre meno chiaro..ti faccio un esempio:
una volta create le classe Professore e Studente:

codice:
public class Main{
  Professore prof;
  Studente st;

  public Main(){
    prof=new Professore();
    st=new Studente();
    st.addProfessoreLIstener(new ProfessoreListener());
  }

  public static void main(String[] args){
    //questi 2 metodi generano eventi
    prof.parla();
    prof.mettiUn2AiRompiballe();

    //e così st si comporterà di conseguenza...
  }
}