定义:从创建子类对象到子类对象字段初始化的过程。
过程:创建子类对象的过程(在用new创建子类对象时,默认会先执行父类的无参构造函数)
子类对象字段的初始化(先初始化父类对象字段在初始化子类对象字段)
base关键字:表示对父类进行访问。
当我们有继承关系的时候,一定要在父类把无参构造函数表示出来,否则当没有父类无参构造函数 的时候,子类的构造函数会报错的。
class Shape
{
private string name;
public string Name { get => name; set => name = value; }
//父类无参构造函数
public Shape()
{
Console.WriteLine("执行了父类无参构造函数");
}
public Shape(string name) //一般希望属于那个类的字段就在哪个类去用构造函数初始化。
{
this.Name= name;
Console.WriteLine("执行了父类有参构造函数");
}
}
class Circle : Shape
{
private double radius;
private const double pi= 3.14;
public double Radius { get