Deep Copy1 『Java』 객체의 불변성(Immutability)이란 무엇인가? 객체의 불변성(Immutability)이란?객체가 불변(immutable)하다는 것은 생성 후 객체의 상태가 변경되지 않는다는 뜻이다. 즉, 객체를 처음 만들었을 때의 상태를 끝까지 유지한다는 말이다. 불변성의 중요성불변 객체는 여러 장점이 있다. 가장 큰 장점은 동기화 문제를 피할 수 있다는 것이다. 객체 상태가 바뀌지 않으므로 여러 스레드에서 동시에 접근해도 Thread-safe 하다. 또한, Side Effect가 없어 설계가 용이하며 캐싱에도 유리하다. Java에서 불변 객체를 만드는 방법setter 메서드 제공 ❌ 객체의 상태값을 변경하는 setter 메서드를 아예 만들지 않는 방법이다. 상태 값을 변경할 필요가 없는 클래스에 setter 메서드를 추가하는 건 불필요하다. final cla.. 2024. 10. 30. 이전 1 다음