As I have read, Collection classes are not synchronized. Therefore, using them in multithreaded programs may cause errors. That is the reason Sun designed syncrhonization wrappers for the Collections. I don't understand why there is a need for synchronized wrapper classes because don't programmers usually use data strucutres within methods, and if programmers make their methods synchronized, then there is no need for wrapper classes. My question, therefore is, why are there Collection wrapper classes?