A์ B์ค๋ธ์ ํธ๊ฐ ์๊ณ ๋์ ํ์ํ ํจ์๊ฐย ๊ฑฐ์ ๋น์ทํ์ง๋งย ๊ทธ๋ ๋ค๊ณ ์์ ํ ๋์ผํ์งย ์๋ ์ํฉ์์
๊ฐ์ฅ ์ฌ์ด ๋ฐฉ๋ฒ์ ๊ทธ๋ฅ ์ค๋ณต์ฝ๋๊ฐ ๋์ค๋๋ผ๋ ์คํฌ๋ฆฝํธ ๋ ๊ฐ ๋ง๋ค์ด์ ๋ฐ๋ก ๋ถํ์ฃผ๋ ๊ฒ ๊ฐ์๋ฐ
๊ทธ๋ฅ ํ ์คํฌ๋ฆฝํธ๋ง ๋ง๋ค์ด์ย ๊ทธ๊ฑธ A์ค๋ธ์ ํธ์ ๋ถํ๋ค๋ฉด Aํจ์๋ฅผ ์คํํ๊ณ B์ ๋ถํ๋ค๋ฉด Bํจ์๋ฅผ ์คํํ๊ฒ ์ฝ๋๋ฅผ ์งค ์ ์์๊น์? ์งค ์ ์์ด๋ ๊ทธ๋ ๊ฒ ์ฌ์ฉํ๋์?
์๋๋ฉด ์ ์ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ๋์ง ๊ถ๊ธํฉ๋๋ค.
๊ทธ๊ฒ๋ ์๋๋ผ๋ฉด ๋ญ...๋ค๋ฅธ ๋ฐฉ๋ฒ์ ๋ชจ์ํ๋๊ฒ ์ข์๊น ์ ํ ๊ฐ์ด ์์ต๋๋ค...
์ธํฐํ์ด์ค ใฑ
interface IBase void Foo() Man : IBase override void Foo() Woman : IBase override void Foo()
๋ค๋ฅธ ์คํฌ๋ฆฝํธ์์ IBase.Foo() ๋ง ํด์ฃผ๋ฉด ํด๋น ์คํฌ๋ฆฝํธ ํ์ ์ ๋ฐ๋ผ Man, Woman์ Foo() ๋ฅผ ๋ฐ๋ผ๊ฐ
์์, ํด๋์ค, ์ถ์ํ ๊ฐ์ ๊ฑฐ ์ฐ์๋ฉด ๋ ๊ฒ ๊ฐ์์
์ด๋ค ์์ผ๋ก ์ ๊ทผํด์ผํ ์ง ๊ฐ์ด ์ค๋ ๊ฒ ๊ฐ๋ค์ ๊ฐ์ฌํฉ๋๋ค!