Is it absolutely necessary to have the same fields?
Yes, if you do not want surprises.
If yes, what should I do if I do not use the same field?
hashCode
, , equals()
, equals hashCode.
, , 3 - a
, b
, c
. a
b
equals()
, 3 hashCode()
. , 2 , a
b
, c
, -.
HashMap HashMap?
, , , .