import java.util.*; class Broker implements Observer { public void update(Observable subject, Object msg) { // respond to rate change } } class Bank implements Observer { private Rate someRate; public Bank(Rate rate) { someRate = rate; someRate.addObserver(this); } public void update(Observable subject, Object msg) { // respond to rate change } } public class Rate extends Observable { private double rate; public void setRate(double newRate) { rate = newRate; setChanged(); notifyObservers(); } }