자료구조

[Map] HashTable과 HashMap의 차이와 Properties

Eddy Jo 2017. 3. 10. 11:55

HashTable이란?


HashMap과 동일한 내부구조를 가지고 있는 Map 구현 클래스



HashMap vs HashTable


 

HashMap 

HashTable 

 동일한 키 기준

 hashCode( )와 equals( ) 

 hashCode( )와 equals( ) 

 동기화된 메소드

 없음

 동기화된 메소드로 구성


HashMap과 HashTable은 동일한 내부 구조를 가지고 있지만

HashTable의 경우는 동기화된 메소드로 구성되어 있기 때문에 멀티 스레드가

동시에 이 메소드를 실행할 수 없고, 하나의 스레드가 실행을 완료해야만 다른 스레드가 실행가능하다.

이는 멀티 스레드 환경에서 안전하게 객체를 추가, 삭제할 수 있다는 것을 의미한다.



Properties란?


Hashtable의 하위 클래스로 Hashtable의 모든 특징을 가지고 있다.

차이점은 Properties는 키와 값을 String으로 제한하였다는 것이다.


주로 애플리케이션의 옵션 정보, 데이터베이스 연결정보 그리고 국제화 정보가 저장된

프로퍼티(~.properties) 파일을 읽을 때 주로 사용