생성자 포워딩

    this() 생성자를 사용하면 생성자를 포워딩(forwarding)할 수 있으므로 다른 생성자에 값을 전달하기 좋습니다.

    > class Money
    . {
    .     public Money() : this(1000) { } //아래 생성자로 전송
    .     public Money(int money) => Console.WriteLine("Money : {0:#,###}", money);
    . }
    >
    > var basic = new Money();
    Money : 1,000
    > var bonus = new Money(2000);
    Money : 2,000

    생성자 뒤에 오는 this()는 자신의 또 다른 생성자를 의미합니다. 이러한 형태로 다른 생성자를 사용하여 값을 전달할 수 있습니다. 나중에 상속을 배우면 this()와 비슷하게 base()를 사용하여 부모 클래스의 생성자에 값을 전달할 수도 있습니다.

    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.