- String
string 클래스가 immutable(변경불가)클래스인 이유?
string 클래스의 값은 생성자에서만 설정이 된다. 그래야 다른 스레드나 변수에 안전하게 공유가 가능하기 때문이다.
- stringBuffer
동기화(synchronization)를 보장해야 하기 때문에 단순한 참조에서는 상대적으로 String 보다 나쁜 성능(가독성을 떨어뜨린다.)을 보인다.
따라서, 단순 참조가 많은 경우 StringBuffer 클래스보다 String 클래스가 유리하다.
물론, StringBuffer 클래스는 동기화되어 있으므로, 멀티 쓰레드에 대하여 안전하다.
댓글 없음:
댓글 쓰기