컬렉션 프레임워크는 대부분의 클래스들은 싱글 스레드 환경에서 사용할수 있도록 설계되었다. 여러 쓰레드가 동시에 컬렉션에 접근한다면 의도하지 않게 요소가 변경될 수 있는 불완전한 상태가 된다. Vector와 Hashtable 은 동기화된(synchronized) 메소드로 구성되어 있어 멀티쓰레드 환경 안전하게 요소를 처리할수 있지만 ArrayList, HashSet, HashMap을 싱글 스레드 환경에서 사용하다가 멀티 스레드 환경으로 전달할 필요도 있을 것이다. 이런 경우를 대비해 컬렉션 프레임워크는 비동기화된 메소드를 동기화된 메소드로 래핑하는 Colletions의 synchronizedXXX() 메소드를 제공한다 매개값으로 비동기화된 컬렉션을 대입하면 동기화된 컬렉션을 리턴한다.