4.2.6派生类的构造函数 在创建派生类的实例时,实际上会有多个构造函数起作用,要实例化的类的构造函数本身不能初始化,必须调用基类构造函数 using System; //抽象基类 public abstract class GenericCustomer { //私有成员字段,派生类无法访问 private string name; //构造函数,含一个参数 public GenericCustomer(string name) { this.name = name; } } //派生类 public class Nevermore60Customer : GenericCustomer { //私有成员字段 private string referrerName; //含2个参数的构造函数 //参数name:用于传值给基类构造函数,完成基类初始化^-^ //参数referrerName:完成派生类自己的初始化 public Nevermore60Customer(string name, string referrerName) : base(name) //关于参数name,派生类不处理,而是传给虚基类,完成初始化 { this.referrerName = referrerName; } //含1个参数的构造函数 //调用派生类自己的含2个参数的构造函数,将name值传给基类构造函数,完成初始化^-^ public Nevermore60Customer(string name) : this(name,"<None>") { } //调用派生类构造函数,将name值传给基类构造函数,完成初始化 //public Nevermore60Customer(string name) // : base(name) //{ } } //实例化类 Nevermore60Customer customer = new Nevermore60Customer("基类参数"); Nevermore60Customer customer2 = new Nevermore60Customer("基类参数", "派生类参数");