๊ตญ๋น ์๋ฐ์์ 12์ผ์ฐจ!!
์ค๋์ this์ super์ ๋ํด์ ๋ฐฐ์ ๋ค!
๊ทธ๋ผ 12์ผ์ฐจ ์์ ์์~~๐
1. this
- ์๊ธฐ ์์ ๊ฐ์ฒด๋ฅผ ์ง์ ํ ๋ ์ฌ์ฉํ๋ ํค์๋.
- this. ์ ์ฌ์ฉํ๋ฉด ๋์ผ ํด๋์ค ๋ด์ ๋ฉค๋ฒ(๋ฉค๋ฒ๋ณ์, ๋ฉ์๋)๋ฅผ ์ฐธ์กฐํ ์ ์์.
- this()๋ฅผ ์ฌ์ฉํ๋ฉด ์์ฑ์ ๋ด๋ถ์์ ์์ ์ด ๋ค๋ฅธ ์์ฑ์๋ฅผ ํธ์ถํ ์ ์์.
Personํด๋์ค๋ ์๊ธฐ์์ ์ ๋ฉค๋ฒ๋ณ์๋ฅผ thisํค์๋๋ฅผ ์ฌ์ฉํด ๊ฐ์ ํด๋์ค ๋ด์ ๋ฉ์๋์ ๋งค๊ฐ๋ณ์์ ๋น๊ตํจ.
์์์ Personํด๋์ค๋ฅผ ์์๋ฐ์ Student, Teacher, Employee๋
Person์์ ์์๋ฐ์ name, age์ ์์ ์ ๋ฉค๋ฒ๋ณ์๋ฅผ
thisํค์๋๋ฅผ ์ฌ์ฉํด ์์ ๋ค์ ํด๋์ค ๋ด ๋ฉ์๋์ ๋งค๊ฐ๋ณ์์ ๋น๊ตํจ.
==>์์ ์์ ๋ค์ ํตํด this.๋ก ์์ ์ ํด๋์ค๋ด ์์ ์ ๋ฉค๋ฒ๋ณ์ ์ ๊ทผ์ด ๊ฐ๋ฅํ๊ณ
this()๋ก ์์ ์ ํด๋์ค ๋ด ์์ ์ ์์ฑ์์ ์ ๊ทผ์ด ๊ฐ๋ฅํจ์ ์์์๋ค.
==> ๊ฐ์ ์ด๋ฆ์ผ๋ก ๋ฉค๋ฒ๋ณ์์ ๋ฉ์๋์ ๋งค๊ฐ๋ณ์๋ฅผ ์ฌ์ฉํ ๋ this.๋ฅผ ์ฌ์ฉํ๋ค.
2. super
- ํ๋จ๊ณ ์ ๋ถ๋ชจํด๋์ค์ ๊ฐ์ฒด๋ฅผ ์ง์ ํ ๋ ์ฌ์ฉํ๋ ํค์๋
- super.์ ์ฌ์ฉํ๋ฉด ๋ถ๋ชจํด๋์ค ๋ฉค๋ฒ๋ฅผ ์ฐธ์กฐํ ์ ์์.
- super()๋ ์์ฑ์ ๋ด๋ถ์์๋ง ์ฌ์ฉ์ด ๊ฐ๋ฅ, ๋ถ๋ชจํด๋์ค์ ์์ฑ์๋ฅผ ํธ์ถํ๋๋ฐ ์ฌ์ฉ.
- ์์ฑ์ ์ฒซ ๋ผ์ธ์๋ ๋ฐ๋์ this(), super()์์ด์ผ ํ๋๋ฐ ์ด๋ฅผ ๊ธฐ์ ํ์ง ์์ผ๋ฉด ๋ฌต์์ ์ผ๋ก super()์ฝ์ ๋์ด ๋ถ๋ชจํด๋์ค ๊ธฐ๋ณธ ์์ฑ์๋ฅผ ์๋ ํธ์ถ
- ์์ฑ์ ๋ด๋ถ์์ ๋๋ค๋ฅธ ์์ฑ์ ํธ์ถํ ๋ (this(), super())๋ฐ๋์ ์์ฑ์ ๋ธ๋ก ๋ด๋ถ ์ฒซ ๋ผ์ธ์ ๊ธฐ์ ํด์ผํจ.
- ์๋ฐ ๊ณ์ธต ๊ตฌ์กฐ๋ super()๋ฅผ ํตํ ํธ์ถ๋ก ์ฐ๊ฒฐ๋์ด ์์.
์์ ํด๋์ค๋ค์ ์ฌ์ฉํ๋ MAIN๋ฌธ์ ์คํํด๋ณด๋ฉด
Studentํด๋์ค๋ Perseon(String name, int age) ๋ฉ์๋์ ๊ธฐ๋ฅ์์คํํ์ฌ
์ด๋ฆ๊ณผ ๋์ด, ํ๋ฒ๊น์ง ๊ฐ์ ๋ฐ๊ณ print๋ฌธ์ฅ์ ์คํํจ.
Motherํด๋์ค๋ Person() ๋ฉ์๋ ๊ธฐ๋ฅ์ ์คํํ์ฌ ๊ฐ์ ๋ฐ์ง์๊ณ
Person()๋ฉ์๋์์ this("๋ฏธ์ ",1)์ ์คํํจ.
'FOR SW ENGINEER๐ฉโ๐ป > JAVA' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
JAVA _๋คํ์ฑ(Polymorphism) (0) | 2021.09.09 |
---|---|
๊ตญ๋นJAVA์์ DAY-13 (0) | 2021.09.02 |
๊ตญ๋นJAVA์์ DAY-11(2) (0) | 2021.08.28 |
๊ตญ๋นJAVA์์ DAY-11 (0) | 2021.08.28 |
๊ตญ๋นJAVA์์ DAY-10(2) (0) | 2021.08.28 |