class Coin2 { String name; int val; Coin2(String name, int val) { this.name=name; this.val=val; } public String toString() { return name + "=" + val + "$"; } public boolean equals(Object obj) { Coin2 otherCoin = (Coin2)obj; if (otherCoin.name.equals(name) && otherCoin.val==val) { return true; } else { return false; } } public static void main(String [] args) { Coin2 a = new Coin2("toonie",2); Coin2 b = new Coin2("toonie",2); Coin2 c = new Coin2("loonie",1); Coin2 d = a; System.out.println("a: " + a); System.out.println("b: " + b); System.out.println("c: " + c); System.out.println("d: " + d); System.out.print("a.equals(b) " + a.equals(b)); System.out.println(" a==b " + (a==b)); System.out.print("a.equals(c) " + a.equals(c)); System.out.println(" a==c " + (a==c)); System.out.print("a.equals(d) " + a.equals(d)); System.out.println(" a==d " + (a==d)); } }