🙇‍♀️생성자

class Knight에 생성자를 만들려면 반환형식이 없는 Knight를 적어야 됨

  • 생성자의 의미
    • 클래스 객체를 생성할때 기본값을 담을수있음
    • 객체를 생성할때 인자를 빼먹지 않고 넣을 수 있는 장점

🪐생성자 예시

class Knight
{
    public int hp;
    public int attack;
    
    public Knight() // 생성자!
    {
        hp = 100;
        attack = 10;
        Console.WriteLine("생성자 호출!");
    }
}

🪐전체 코드

class Knight
{
    public int hp;
    public int attack;
    
    public Knight() // 생성자
    {
        hp = 100;
        attack = 10;
        Console.WriteLine("생성자 호출!");
    }

    public Knight(int hp) : this() // class Knight를 상속받는 생성자
    {
        this.hp = hp; // this는 class Knight의 public int hp를 말함
        Console.WriteLine("int 생성자 호출!");
    }

    public Knight(int hp, int attack) // 인자 두개를 받는 생성자
    {
        this.hp = hp;
        this.attack = attack;
        Console.WriteLine("int, int 생성자 호출!");
    }
}
class Program
{
    static void Main(string[] args)
    {
        Knight knight = new Knight(50);
        // 생성자 호출!
        // int 생성자 호출!
    }
}

태그:

카테고리:

업데이트: