c#基础(五)继承及继承中构造函数的调用

        在c#中,一个类可以继承自其他类。如果A继承自B,那么A叫做B的子类或派生类,B叫做A的父类或基类。在继承的过程中,子类会从父类继承所有非private成员。与此同时,子类还可以有子类。需要注意的是,在C#中一个类只能有一个父类,如果没有指定父类,那么系统默认继承System.Object为父类。

        在实际的项目开发中,通过继承可以实现代码复用,简化开发。如果你的项目底层是EF code first通过实体的方式生成数据库,那么就可以将一些基础字段,如修改时间、创建时间、是否逻辑删除以及ID等封装在一个基类中,其他的类继承自这个基类,这样就不用每个类中都在去重复定义这些基础字段了,当然这只是继承的一个简单的应用。

        如果一个类继承自其他类,那么子类和父类的构造函数是先调用父类中的构造函数,然后再调用子类中的构造函数,代码如下:

c#基础(五)继承及继承中构造函数的调用

        需要注意的是,如果一个类中没有定义构造函数,那么系统会自动为我们创建一个无参的构造函数,同理,如果该类是子类,且父类中也没有定义构造函数,那么在创建子类对象的时候,系统会默认的帮我们调用父类的无参构造函数。