Import java.util.Observable;
Import Java.util.Observer;
Class House extends Observable {
private float price;
public float GetPrice () {
return price;
}
public void Setprice (float price) {
Super.setchanged ();
Super.notifyobservers (price);
This.price = Price;
}
Public String toString () {
Return "house [price=" + Price + "]";
}
Public house (float price) {
This.price = Price;
}
}
Class Housepriceobserver implements Observer {
Private String namestring;
Public Housepriceobserver (String name) {
this.namestring = name;
}
@Override
public void update (Observable o, Object Arg) {
if (arg instanceof Float) {
System.out.print (this.namestring + "price changed-be:");
System.out.println ((Float) arg). Floatvalue ());
}
}
}
public class ObserDemo01 {
public static void Main (string[] args) {
House House = new House (100000);
Housepriceobserver HPriceObserver01 = new Housepriceobserver ("A");
Housepriceobserver HPriceObserver02 = new Housepriceobserver ("B");
Housepriceobserver hPriceObserver03 = new Housepriceobserver ("B");
House.addobserver (HPRICEOBSERVER01);
House.addobserver (HPRICEOBSERVER02);
House.addobserver (HPRICEOBSERVER03);
System.out.println (house);
House.setprice (594030900);
System.out.println (house);
}
}