【C#】多态
多态
就是对象可以表现多个类型的能力
子类的方法名可以和父类的方法名重名,但是会出现一条绿线,瑕疵
解决1:可以在子类方法的修饰符后加new就解决了,无论是否加new,都不影响使用
解决2:可以在父类的方法修饰符后加virtual,变成虚方法;然后要在子类方法修饰符后加override,重写父类的方法,把父类方法给改变了
虚方法与重写:
1.方法不能用static修饰
2.方法重写与基类(父类)的签名必须一致
3.virtual不能与private一起使用
抽象方法与抽象类:
抽象方法是用abstract修饰,抽象方法没有方法体,不能实例化,正常方法可以在子类中调用
抽象方法必须在抽象类中,抽象类无法实例化
父类是抽象类,子类继承了这个类,必须把抽象类中的抽象方法重写(override)
虚方法与抽象方法: