...
using System;
public abstract class Dragon
{
public int hp;
public int atk;
public abstract void UpGround();
public abstract void DownGround();
public bool IsCheackTargetAlive()
{
return true;
}
public void Attack()
{
UpGround();
Debug.Log("공격한다");
DownGround();
if(IsCheackTargetAlive())
{
Attack();
}
}
}
public class BlueDragon : Dragon
{
public override void UpGround()
{
Debug.Log("올라왔다");
}
public override void DownGround()
{
Debug.Log("내려왔다");
}
}
안겹치는 부분만 추상함수로 만들어버리는 게 템플릿 메서드.
부모에선 이름만 쓰고 자식에서 정의함.
'C#' 카테고리의 다른 글
Parameter / Arguments 차이 (0) | 2022.06.22 |
---|---|
리플렉션 (0) | 2022.06.22 |
EventHandler (0) | 2022.06.21 |
프로퍼티 (0) | 2022.06.21 |
전략적 패턴 (0) | 2022.06.20 |