子类继承基类,生成实例时,会先跑基类的构造函数,再跑子类的构造函数
class Program
{
public static void Main(string[] args)
{
ClassA clsA = new ClassA();
Console.ReadKey();
}
}
public class Base
{
public Base()
{
Console.WriteLine("Base");
}
}
public class ClassA : Base
{
public ClassA()
{
Console.WriteLine("ClassA");
}
}
结果如下:

然而在C#的类里,一个类的构造函数并不是只限一个。当基类有多个构造函数的时候可以使用base关键词给子类的构造函数选择一个基类的构造函数。当子类构造函数不写base的时候,默认为base(),直接继承基类的无参构造函数。
class Program
{
public static void Main(string[] args)
{
ClassA clsA = new ClassA();
Console.WriteLine();
ClassA clsA1 = new ClassA(1);
Cons

在C#中,子类在实例化时会先执行基类的构造函数,然后执行自身的构造函数。当基类存在多个构造函数时,可以使用base关键字在子类构造函数中指定调用基类的特定构造函数。若子类构造函数未明确使用base,则默认调用基类的无参构造函数。

425

被折叠的 条评论
为什么被折叠?



