이전 글에서 final을 앞에 달아주기만 하면 무적의 불변 객체가 되 .... .는줄 알았으나 ....불변 객체가 기본적으로 안전성을 높여주지만, 외부에서 참조하는 가변 객체를 포함하거나, 불변 객체의 일부 상태가 방어적 복사 없이 외부로 노출되는 경우 안전하지 않을 수 있다는 것. !! 그렇다면 불변 객체의 안전을 위협하는 상황에 대해서 알아보자1. 가변 객체를 포함할 때- 불변 객체 내부에 가변 객체가 포함되면, 해당 가변 객체의 상태가 외부에서 변경될 가능성이 생긴다. 예를 들어 Date 객체는 가변이므로, final 필드에 포함되더라도 객체 내부 상태가 바뀔 수 있다.public final class Period { private final Date startDate; private f..