实例构造器永远不能被继续。如果定义的类中没有显式构造器, c#编译器将定义一个默认构造器,在它的实现中,只是简单调用基类的无参构造器。 所以: public class SomeType{} 等价于 public class SomeTyoe{ public SomeType():base(){} } 如果类的修饰符是abstract,那么编译器生成的默认的构造器是protected,否则是public。 如果基类没有提供无参构造器,那么派生类就必须显示调用一个基类构造器,否则编译报错。 如果是静态类,那么类没有实例构造器。 在类中访问基类的字段之前,必须调用基类的构造器,如果没有显式调用基类的构造器, c#编译器会自动生成对默认的基类构造器的调用,最后会调用Object的构造器。