// VizsgalApp.java

import java.util.*;

class Szamlalo implements Observer {
  int változások;

  public void update(Observable o, Object obj) {
    változások++;
  }
  public int változásokSzáma() {
    return változások;
  }
}

class Spion implements Observer {
  public void update(Observable o, Object obj) {
    System.out.println("Ne bántsátok szegényt! Te meg, '" 
		       + obj +"', menj vissza!");
  }
}

class Nebantsvirag extends Observable {
  public void változik(Object o) {
    setChanged();
    notifyObservers(o);
  }
}

class VizsgalApp {
  public static void main(String argv[]) {
    Nebantsvirag n=new Nebantsvirag();
    Szamlalo s=new Szamlalo();
    Spion fióka=new Spion();
    
    n.addObserver(s);
    n.addObserver(fióka);
    n.változik(new Integer(100));
    n.változik("piszka, motoszka");

    System.out.println("A Nebántsvirágot " + s.változásokSzáma()+
		       "-szor változtatták.");
  }
}
