C#——多态

来源:互联网 发布:淘宝店铺开通花呗链接 编辑:程序博客网 时间:2024/05/15 00:26

多态性:多态性意味着有多重形式。在面向对象编程范式中,多态性往往表现为"一个接口,多个功能"。

多态性可以是静态的或动态的。在静态多态性中,函数的响应是在编译时发生的。在动态多态性中,函数的响应是在运行时发生的。

多态——隐藏基类方法与多态的实现

子类可以有多个与父类方法名相同的方法

1、签名不同(重载)

2、签名相同(隐藏基类方法)

子类可以重写父类的方法

1、虚方法

2、重写方法

3、重写基类方法一样可以调用基类方法

多态就是对象可以表现多个类型的能力

子类可以和父类的方法重名,但是会出现一条绿线

可以在子类方法的修饰符后面加new解决

无论是否加new都不影响使用

当有一个定义在类中的函数需要在继承类中实现时,可以使用虚方法。虚方法是使用关键字 virtual 声明的。虚方法可以在不同的继承类中有不同的实现。对虚方法的调用是在运行时发生的。

动态多态性是通过 抽象类 和 虚方法 实现的。

多态——抽象方法与抽象类

抽象类与抽象方法由abstract修饰

abstract的使用注意

1、抽象方法没有方法体

2、抽象成员只能存在于抽象类中

3、抽象类可以有非抽象成员

4、抽象类的派生类必须实现抽象方法体

5、抽象类只能用作基类,无法实例化


0 0
原创粉丝点击