public class Animal {
private String name;
public Animal(String n) { name = n; }
public boolean equals(Object o) {
if (!(o instanceof Animal)) return false;
return name.equals(((Animal) o).name);
}
}
// Usage:
Animal a = new Animal("Rex");
Animal b = new Animal("Rex");
System.out.print(a.equals(b));What is printed?
- A
ClassCastException
- B
false
- C
Compile error
- Dcheck_circle
true
Explanation
Both have name "Rex". The instanceof check passes; String.equals on the names returns true.