Given:
11. public class Person {
12. private String name;
13. public Person(String name) {
14. this.name = name;
15. }
16. public boolean equals(Object o) {
17. if ( ! ( o instanceof Person) ) return false;
18. Person p = (Person) o;
19. return p.name.equals(this.name);
20. }
21. }
Which statement is true?
A.
Compilation fails because the hashCode method is not overridden.
B.
A HashSet could contain multiple Person objects with the same name.
C.
All Person objects will have the same hash code because the hashCode method is not
overridden.
D.
If a HashSet contains more than one Person object with name=”Fred”, then removing another
Person, also with name=”Fred”, will remove
them all.