继承
一.继承的使用条件:
当你在设计类时,发现有重复字段
具有相同特征不同行为的可以抽取出来,单独称为一个类,这个类供派生类使用
简称:基类
二.在程序中使用关键符号:
1. 表示继承
格式: (: 类)
这个类指继承的类
2.继承关系中的特点:
子类可以继承父类中的共有字段
子类可以继承父类中的共开属性
子类可以继承父类中的公开方法
父类不能拥有子类的字段/方法/属性/索引器
在c#中不支持多重继承,一个类只能继承一个类,如果你想支持多继承,请使用 Iterface
三.继承关系中的构造函数(重点)
1.在继承关系中,首先会调用父类的构造函数,然后再调用子类的构造函数
2.在继承关系中,子类初始化对象的时候,先调用父类的构造函数,然后再看子类构造函数有没有显示,通知编译器指定调用父类的哪个构造函数,如果没有,那么默认去调用父类无参数的构造函数
此时如果父类重写了带有参数的构造函数,程序编译不通过,那么解决办法就是给父类添加无参数的构造函数,或者在子类构造函数中声明指定调用父类哪个构造函数
this 表示当前类实例
base基类(表示父类对象)
protected:受保护的,只有基类以及派生类可以访问(派生类内部都可以访问)
如果子类中存在与父类一样名称的方法,此时如果想完全覆盖父类方法的同时,要告知编译器
该方法是子类覆盖的方法,使用new关键字