다. 따라서 생성자를 호출할 때 절대로 클래스 불변 조건을 위배하는 인자를 넘기는 일이 없으
므로, 생성자는 값을 필드에 대입하기만 하면 된다.
하지만 데이터 클래스에 있는
copy
메서드는 항상 공개
public
메서드이기 때문에 불변 조건을
지키지 않는 새
Money
값을 만들 수 있다.
EmailAddress
와 달리
Money
클래스 같은 추상 데
이터 타입을 코틀린 데이터 클래스를 사용해 구현할 수는 없다.
WARNING
_ 프로퍼티 사이에 불변 조건을 유지해야 하는 값 타입을 데이터 클래스를 사용해 정의하지
말라.
나중에 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month, and much more.