继承与多态
继承
定义:继承就是子类具有父类的属性和方法,也就是子类以父类为基础进行扩展的一种机制。
1、子类是父类,父类不一定是子类(凡是父类出现的地方都可以用子类来替换)
2、子类比父类更具体,父类比子类抽象(子类又叫派生类,父类又叫基类)
3、子类不能多重继承
继承中的构造函数的特点:
1、方法名和类名一样
2、没有返回类型
3、不能被显示调用
4、不能被继承
5、在new时构造函数可以被调用
6、可以重载
构造函数的次序:构造函数在执行的时候都要先执行他的前置构造函数
1、默认情况下,前置函数是指父类的无参构造
2、使用“:”指定前置构造
3、base()表示父类无参,base(...)表示父类有参
4、this()表示调用自己的无参构造,this(..)表示自己的有参构造
密封类:如果不希望一个类被其他类继承,我们就可以定义这个类为密封类
关键字:sealed(使用sealed修饰的类的成员不能被protected修饰,否则编译器会报警告)
多态
多态:某个功能的不同表达,包括:重载、重写、隐藏
重载:在一个类中,同样的功能,实现的不一样,表现为同名的多个方法
1、方法名相同2、参数不同(返回类型不构成重载条件)3、区分重载主要是看调用时能不能准确调用某个方法4、在同一个类中产生5、没有关键字
重写:是指子类重新实现父类中的方法
最重要的两个关键字:virtual 和 override