내일배움캠프 14일차 TIL - 추상 클래스

권태하·2024년 5월 2일
post-thumbnail

추상 클래스란

추상 클래스는 직접적으로 인스턴스를 생성할 수 없는 클래스이다.
추상 클래스는 abstract 키워드를 사용하여 선언되며, 추상 메서드를 포함할 수 있다.
주로 상속을 위한 베이스 클래스로 사용된다.
추상 메서드는 구현부가 없는 메서드로, 자식 클래스에서 반드시 구현되어야 한다.

abstract class Shape
{
    public abstract void Draw();
}

class Circle : Shape
{
    public override void Draw()
    {
        Console.WriteLine("Drawing a circle");
    }
}

class Square : Shape
{
    public override void Draw()
    {
        Console.WriteLine("Drawing a square");
    }
}

class Triangle : Shape
{
    public override void Draw()
    {
        Console.WriteLine("Drawing a triangle");
    }
}

사용처

주로 사용되는 방법은 퀘스트처럼 정해진 흐름 또는 포맷을 가지는 시스템에서 가이드라인을 잡아주는 역할을 한다.
퀘스트 수락 -> 퀘스트 진행 -> 퀘스트 완료
라는 흐름을 모든 퀘스트에 강요하면서, 실제 퀘스트의 내용은 각 퀘스트 클래스에 구현을 맡기는 용도로 쓸 수 있겠다.

또한, 팀 프로젝트일 경우에 서로 다른 사람이 퀘스트를 만들 경우 포맷이 달라지지 않고 일정하게 만들어 질 수 있도록 이용할 수 있다. '강제구현'

이번 팀 프로젝트에서 퀘스트 담당 구현이 아니었기 때문에 사용할 일은 없었지만, 시간이 날 때 어떤식으로 사용하면 좋을지 직접 사용해보며 숙지할 필요가 있겠다.

profile
스터디 로그

0개의 댓글