๋คํ์ฑ(3)
-
[JAVA] 11. ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ8. ๋คํ์ฑ, ์ถ์ํด๋์ค
https://hyejin.tistory.com/567 [JAVA] 11. ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ7. ๋คํ์ฑ 1๏ธโฃ ๋คํ์ฑ(polymorphism) ๊ฐ์ฒด์งํฅ๊ฐ๋ ์์ ๋คํ์ฑ์ด๋ '์ฌ๋ฌ๊ฐ์ง ํํ๋ฅผ ๊ฐ์ง ์ ์๋ ๋ฅ๋ ฅ'์ ์๋ฏธํ๋ฉฐ, ์๋ฐ์์๋ ํ ํ์ ์ ์ฐธ์กฐ๋ณ์๋ก ํ์ฌ ์ฌ๋ฌ ํ์ ์ ๊ฐ์ฒด๋ฅผ ์ฐธ์กฐํ ์ ์๋๋ก ํจ์ผ๋ก์จ hyejin.tistory.com 1๏ธโฃ ์ฌ๋ฌ ์ข ๋ฅ์ ๊ฐ์ฒด๋ฅผ ๋ฐฐ์ด๋ก ๋ค๋ฃจ๊ธฐ ์กฐ์ํ์ ์ ์ฐธ์กฐ๋ณ์ ๋ฐฐ์ด์ ์ฌ์ฉํ๋ฉด, ๊ณตํต์ ์กฐ์์ ๊ฐ์ง ์๋ก ๋ค๋ฅธ ์ข ๋ฅ์ ๊ฐ์ฒด๋ฅผ ๋ฐฐ์ด๋ก ๋ฌถ์ด์ ๋ค๋ฃฐ ์ ์๋ค. ๋๋ ๋ฌถ์ด์ ๋ค๋ฃจ๊ณ ์ถ์ ๊ฐ์ฒด๋ค์ ์์๊ด๊ณ๋ฅผ ๋ฐ์ ธ์ ๊ฐ์ฅ ๊ฐ๊น์ด ๊ณตํต์กฐ์ ํด๋์ค ํ์ ์ ์ฐธ์กฐ๋ณ์ ๋ฐฐ์ด์ ์์ฑํด์ ๊ฐ์ฒด๋ค์ ์ ์ฅํ๋ฉด ๋๋ค. Product[] products = new Product[3]; products..
2022.04.23 -
[JAVA] 11. ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ7. ๋คํ์ฑ
1๏ธโฃ ๋คํ์ฑ(polymorphism) ๊ฐ์ฒด์งํฅ๊ฐ๋ ์์ ๋คํ์ฑ์ด๋ '์ฌ๋ฌ๊ฐ์ง ํํ๋ฅผ ๊ฐ์ง ์ ์๋ ๋ฅ๋ ฅ'์ ์๋ฏธํ๋ฉฐ, ์๋ฐ์์๋ ํ ํ์ ์ ์ฐธ์กฐ๋ณ์๋ก ํ์ฌ ์ฌ๋ฌ ํ์ ์ ๊ฐ์ฒด๋ฅผ ์ฐธ์กฐํ ์ ์๋๋ก ํจ์ผ๋ก์จ ๋คํ์ฑ์ ํ๋ก๊ทธ๋จ์ ์ผ๋ก ๊ตฌํํ์๋ค. -> ์กฐ์ํด๋์ค ํ์ ์ ์ฐธ์กฐ๋ณ์๋ก ์์ํด๋์ค์ ์ธ์คํด์ค๋ฅผ ์ฐธ์กฐํ ์ ์๋๋ก ํ์๋ค. Tv t = new Tv(); Tv t2 = new SmartTv(); SmartTv t3 = new SmartTv(); -> Tv ์ฐธ์กฐ ๋ณ์๋ก๋ SmartTv ์ธ์คํด์ค ์ค์์ Tv ํด๋์ค์ ๋ฉค๋ฒ๋ค๋ง ์ฌ์ฉํ ์ ์๋ค. ๋ ๋ค ๊ฐ์ ํ์ ์ ์ธ์คํด์ค์ง๋ง ์ฐธ์กฐ๋ณ์์ ํ์ ์ ๋ฐ๋ผ ์ฌ์ฉํ ์ ์๋ ๋ฉค๋ฒ์ ๊ฐ์๊ฐ ๋ฌ๋ผ์ง๋ค. ์ฐธ์กฐ๋ณ์๊ฐ ์ฌ์ฉํ ์ ์๋ ๋ฉค๋ฒ์ ๊ฐ์๋ ์ธ์คํด์ค์ ๋ฉค๋ฒ ๊ฐ์๋ณด๋ค ๊ฐ๊ฑฐ๋ ..
2022.04.21 -
[๊ฐ์ฒด์งํฅ] 5. ์ฑ ์๊ณผ ๋ฉ์์ง
ํ๋ฅญํ ๊ฐ์ฒด์งํฅ ์ธ๊ณ๋ ๋ช ํํ๊ฒ ์ ์๋ ์ญํ ๊ณผ ์ฑ ์์ ์ง๋ ๊ฐ์ฒด๋ค์ด ์ํธ ํ๋ ฅํ๋ ์ธ๊ณ์ด๋ค. 1๏ธโฃ ์์จ์ ์ธ ์ฑ ์ ๊ฐ์ฒด์งํฅ ๊ณต๋์ฒด๋ฅผ ๊ตฌ์ฑํ๋ ๊ธฐ๋ณธ ๋จ์๋ '์์จ์ '์ธ ๊ฐ์ฒด์ด๋ค. ๊ฐ์ฒด๋ค์ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ธฐ๋ฅ์ ๊ตฌํํ๊ธฐ ์ํด ํ๋ ฅํ๊ณ , ํ๋ ฅ ๊ณผ์ ์์ ๊ฐ์ ๋งก์ ๋ฐ ์ฑ ์์ ๋คํ๊ธฐ ์ํด ์์จ์ ์ผ๋ก ํ๋จํ๊ณ ํ๋ํ๋ค. ๋ฐ๋ผ์ ์์จ์ ์ธ ๊ฐ์ฒด๋ ์ค์ค๋ก์ ์์ง์ ํ๋จ์ ๋ฐ๋ผ ๊ฐ์ ๋งก์ ์ฑ ์์ ์ํํ๋ ๊ฐ์ฒด๋ฅผ ์๋ฏธํ๋ค. ๊ฐ์ฒด๊ฐ ์์จ์ ์ด๊ธฐ ์ํด์๋ ๊ฐ์ฒด์๊ฒ ํ ๋น๋๋ ์ฑ ์์ ์์ค ์ญ์ ์์จ์ ์ด์ด์ผํ๋ค. ์์จ์ ์ธ ์ฑ ์์ ํน์ง์ ๊ฐ์ฒด๊ฐ ์ด๋ป๊ฒ(HOW) ํด์ผํ๋์ง๊ฐ ์๋๋ผ ๋ฌด์(WHAT)์ ํด์ผํ๋๊ฐ๋ฅผ ์ค๋ช ํ๋ ๊ฒ์ด๋ค. ๊ฐ์ฒด๊ฐ ๋ค๋ฅธ ๊ฐ์ฒด์๊ฒ ์ ๊ทผํ ์ ์๋ ์ ์ผํ ๋ฐฉ๋ฒ์ ์์ฒญ์ ์ ์กํ๋ ๊ฒ๋ฟ์ด๋ค. ๊ทธ๋ฆฌ๊ณ ์ด ์์ฒญ์ ๋ฉ์์ง๋ผ๊ณ ํ..
2022.03.25