BitSet performs no synchronization. Its specification should make this clear. Currently, it is misleading: the spec for the hashCode method vaguely implies that it is thread-safe. The misleading occurrence of the synchronized keyword should be removed, and a note should be added to the class comment explaining that the class requires external synchronization if it is to be used in a multithreaded setting.