불변 객체에 대해 정리해보는 시간을 가져보도록 한다. 대부분의 내용은 이펙티브 자바와, 다른 분의 블로그를 인용하였습니다. 왜 불변 객체를 사용해야 할까? 불변 객체는 스레드의 안전하다. 생성과 동시에 값이 할당되고 변경이 불가능한 객체임으로 기본적으로 스레드의 안전하다. 실패 원자적인 메서드를 만들 수 있다. 이펙티브 자바에 따르면 메서드에서 예외가 발생한 후 에도 객체는 메서드 호출 전과 똑같은 유효한 상태이다. (내부 상태를 변경한 적이 없으니 이를 만족한다. 부수효과를 방지 할 수 있다. 객체 생성과 동시에 값이 할당되어 상태에 대한 변경이 내부에서도 이루어지지 않기 때문에 변경에 따른 부수효과를 방지할 수 있으며 이 부분은 사용시점에 가독성과 안정성을 향상한다. GC의 성능을 향상할 가능성이 있..