What is the difference between `HashMap`, `Hashtable`, `Collections.synchronizedMap`, and `ConcurrentHashMap`?

Topic: java, Multithreading & Concurrency. Level: Intermediate.

The full answer to this question is available to Interview Reader members. See what is free and what Premium adds.