Domanda di colloquio di BlackRock

Equals and HashCode in Java. Why do we need them?