public class Money { 
  // ... all the previous code 
  public boolean equals(Object anObject) {
    if (anObject instanceof Money) {
        Money aMoney= (Money)anObject;
        return aMoney.currency().equals(currency())
            & & amount() == aMoney.amount();
    }
    return false;
}