Person 클래스는 data 키워드 없이 정의됐으므로 같은 name을 담은 두 인스턴스가 서로 동등하지 않다. 다행히 Contact를 data 클래스로 정의하면 타당한 결과를 얻을 수 있다.
data 클래스인 Contact와 객체 정보를 디폴트 형태로 보여주는 일반 클래스 Person의 표현 방법 차이를 살펴보라.
모든 data 클래스에 생성되는 또 다른 유용한 함수로 copy()가 있다. copy()는 현재 객체의 모든 데이터를 포함하는 새 객체를 생성해준다. 또 이렇게 새 객체를 생성할 때 몇몇 값을 새로 지정할 수 있다.