C# 继承 子类(派生类) 父类(基类)

时间:2022-09-07 22:12:44

子类(派生类) 父类(基类 
  1.子类拥有父类所有的成员.
  2.protected 修饰的成员只能在本类和子类中访问. 
  3.创建子类对象的时候,在子类对象中会为子类对象的字段开辟空间 也会为父类对象的所有字段开辟空间. 只不过父类私有的成员访问不到而已。
  4.子类从父类继承父类所有的非私有成员. 
  5.base关键字可以调用父类的非私有成员.
  6.子类的访问级别不能比父类高.   
  7.创建子类对象的时候,1.调用子类的构造函数 2.调用父类的构造函数 3.执行父类的构造函数 4.执行子类的构造函数.

  8.子类的构造函数后面默认加了1个 :base() 通过这个调用父类的无参数的构造函数.
  9.如果父类没有无参数的构造函数 将会报错,因为子类的构造函数默认会调用父类的无参数的构造函数.
 10.使用base关键字可以显示的指定子类构造函数调用父类有参的构造函数.

 1. 为什么要调用父类的构造函数
      父类的构造函数会初始化父类属性的值.
 2. 为什么优先于本类的构造函数执行.  

 

续:

1. 继承的好处:方便代码管理. 子类可以拥有父类的非私有成员  为了多态.
2. 子类的构造函数.默认会去调用父类的无参数的构造函数.
3.  显示指定子类构造函数调用的父类构造函数 base
4.  创建子类对象的内存图.
5. this 可以点出子类的所有成员和父类的非私有成员 base可以点出父类的非私有成员. 
6  单根性 传递性