c# 패러미터를 갖는 컨스트럭터가 있는 배이스 클래스를 상속하기

class Class1
{
    public string String;

    public Class1(string string1)
    {
        String = string1;
    }
}

class Class2 : Class1
{
    public Class2(string string1) : base(string1)
    {

    }
}

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();

        Class2 class2 = new("a");

        Text = class2.String; // a
    }
}

배이스 클래스에 패러미터를 가진 컨스트럭터가 있으면 디라이브드 클래스는 컨스트럭터를 만들고 배이스 클래스에 아규먼트를 넘겨야 한다.

배이스 클래스와 다르게 작동시키려면 아래와 같이 해도 된다.

class Class2 : Class1
{
    public Class2() : base(null)
    {

    }
}

하지만 저러면 상속하는 의미가 없다. 이 경우에도 배이스 클래스에 무언가는 넘겨야 한다.