티스토리 뷰

오늘 한 일 (회고)

오전

오후

  • 팀프로젝트 진행
    • 추상클래스 LivingEntity를 만들어 zombie와 animal이 상속받을 수 있는 코드연습

새로 배운 것

 

추상클래스 (abstract class)

기본클래스의 역할을 하면서 객체로 직접 생성될 수 없는 클래스입니다.

 

추상클래스의 특징

  • 추상메서드
 protected abstract void DetectPlayer();

 

추상 클래스는 구현되지 않은 추상 메서드(abstract method)를 포함할 수 있습니다. 이러한 메서드는 메서드 선언만 있고 본체가 없으며, 상속받는 클래스에서 반드시 구현해야 합니다

 

 

 

 

  • 인스턴스화 불가
LivingEntity entity = new LivingEntity(); // 오류 발생!

 

추상 클래스는 객체로 직접 생성할 수 없습니다. 즉, LivingEntity를 기반으로 객체를 만들 수 없으며, 상속받은 자식 클래스를 통해서만 객체를 생성할 수 있습니다.

 

  • 다형성 지원
public class Zombie : LivingEntity
{
    public override void TakeDamage(int damage)
    {
        Health -= damage;
    }
}

LivingEntity zombie = new Zombie();
zombie.TakeDamage(10); // 다형성으로 자식 클래스의 메서드 호출 가능

 

추상 클래스는 다형성을 지원합니다. 부모 클래스인 추상 클래스를 참조하여 자식 클래스의 메서드를 호출할 수 있으며, 코드의 유연성을 높이는 데 유용합니다.

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/03   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
글 보관함