Data Class๋ฐ์ดํฐ๋ฅผ ๋ค๋ฃจ๋ ๋ฐ์ ์ต์ ํ๋ ํด๋์ค์ด๋ค.5๊ฐ์ง ๊ธฐ๋ฅ์ ๋ด๋ถ์ ์ผ๋ก ์๋์ผ๋ก ์์ฑํด์ค๋ค.equals()๋ด์ฉ์ ๋์ผ์ฑ์ ํ๋จํ๋ค.hashcode()ํด๋์ค์ ๋ด์ฉ์์ ๊ณ ์ ์ ํด์ฌ์ฝ๋๋ฅผ ๋ฐํํด์ค๋ค.๊ฐ์ฒด์ ๋ด์ฉ์์ ๊ณ ์ ํ ์ฝ๋๋ฅผ ์์ฑํ๋ค.toString()ํฌํจ๋ ์์ฑ์ ๋ณด๊ธฐ์ฝ๊ฒ ๋ํ๋ธ๋ค.copy()๊ฐ์ฒด๋ฅผ ๋ณต์ฌํ์ฌ ๋๊ฐ์ ๋ด์ฉ์ ์ ๊ฐ์ฒด๋ฅผ ๋ง๋ ๋ค.copy() ํจ์๋ฅผ ์ด์ฉํด ์ ๊ฐ์ฒด๋ฅผ ์์ฑํ ๋๋ ๋๊ฐ์ ๋ด์ฉ์ ๊ฐ์ฒด๋ฅผ ์์ฑํ ์๋ ์์ง๋ง ์์ฑ์์ ๋๊ฐ์ ํํ์ ํ๋ผ๋ฏธํฐ๋ฅผ ์ฃผ์ด ์ผ๋ถ ์์ฑ์ ๋ณ๊ฒฝํด ์ค ์๋ ์๋ค.์๋ฌด ํ๋ผ๋ฏธํฐ๊ฐ ์์ผ๋ฉด ๋๊ฐ์ ๋ด์ฉ์ผ๋ก ์์ฑํ๋ค.ํ๋ผ๋ฏธํฐ๊ฐ ์๋ค๋ฉด ํด๋น ํ๋ผ๋ฏธํฐ๋ฅผ ๊ต์ฒดํ์ฌ ์์ฑํ๋ค.componentX()์์ฑ์ ์์๋๋ก ๋ฐํํ๋ค.component1(), component2..