I was asked such question in a job interview.
My points:
Hashtable is sychronized.
Hashtable comes with JDK1.0.
It is rewrited to fit JDK1.2 collection framework by
implementing Map interface.
Acutally it is not part of Java 2 collection framework.
It inherits java.util.Dirtionary.
HashMap and HashSet are not synchronized.
You can use synchronized wrapper for sychronized access.
There is no big difference for HashMap and HashSet in terms
of usage
though they implement different interfaces.
All a