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)
{
}
}
하지만 저러면 상속하는 의미가 없다. 이 경우에도 배이스 클래스에 무언가는 넘겨야 한다.