abstract class Weapon {
public abstract void DoDam();
}
์ด๋ฐ ์์ผ๋ก ์ ์ธํ์ ๋
class FireSword : Weapon {
public override DoDam() {
ํํํ๋ผ
}
class IceSword : Weapon {
public override DoDam() {
๊ฝ๊ฝ์ผ์ด๋ผ
}
์๋ฐ์์ผ๋ก ๊ฐ๊ฐ ๊ณต๊ฒฉํ๋ ๋ฉ์๋๋ฅผ ์ค๋ฒ๋ผ์ด๋ ํด์ ๋ง๋ค๊ณ ์๋ ๊ฐ์ ํจ์์
void enchant(Weapon weapon, Scrap scrap) {
if(isMatchElement(weapon, scrap)) {
๊ฐํ์ฑ๊ณต!
}
}
enchant(fireSword, fireStone) ์ด๋ฐ ์์ผ๋ก ์ธ ์ ์๋ค ์ด๊ฑฐ์?
์ผ์ถ ๋น์ท Kill์ด ์ฃฝ์ด๋๊ฑฐ๋ผ๋ฉด ์๋ง๋ ํ๋ผ๋ฉํฐ๋ก ์ฃฝ์ด๋ ๋์์ด ๋์ด ์ฌ ๊ฒ ๊ฐ์๋ฐ ๋ง์ด์ง๋ง....์ ์ฌํผ ์ ๋ฐ์์ผ๋ก ๋ฐ๋ก ์์ฑ๊ฐ๋ฅ ์ธํฐํ์ด์ค๋ ๊ฐ๋ฅํจ๋น
ใณใณ! ํ์คํ kill์ ์ข ์ด์ํด ๋ณด์ฌ์ enchant ํจ์๋ก ๋ฐ๊ฟ๋ดค์์!
๋ธ๋ฆฌ๊ฒ์ดํธ๋ ์์๋ณด๋ฉด ์ข์๋ฏ
๋ ์ฉ? ๋ธ๋ฆฌ๊ฒ์ดํธ๊ฐ ์ ๊ทธ๋ฐ๋ฐ์ ๋์ค์ง์?