48.C#--多态之虚方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了48.C#--多态之虚方法相关的知识,希望对你有一定的参考价值。

static void Main(string[] args)
{
//多态概念:让一个对象能够表现出多种的状态(类型)
//实现多态的3种手段:1、虚方法 2、抽象类 3、接口
//以下例子用虚方法来实现:普通员工九点打卡,经理十点打卡,设计师不用打卡
//创建普通员工对象,经理对象,设计师对象
Employee emp = new Employee();
Manager man = new Manager();
Designer des = new Designer();
//
Employee[] emps = { emp, man, des };
for (int i = 0; i < emps.Length; i++)
{
emps[i].DaKa();
}
Console.ReadKey();
}
//新建一个普通员工类
public class Employee
{
//新建一个打卡的方法,注意,这里加了virtual虚方法关键字
public virtual void DaKa()
{
Console.WriteLine("普通员工九点打卡!");
}
}
//创建一个经理类,继承普通员工类
public class Manager : Employee
{
//这里打卡的方法用了override重写这个方法
public override void DaKa()
{
Console.WriteLine("经理十点打卡!");
}
}
//创建一个设计师类,继承普通员工类
public class Designer : Employee
{
//这里打卡的方法用了override重写这个方法
public override void DaKa()
{
Console.WriteLine("设计师不用打卡!");
}
}

以上是关于48.C#--多态之虚方法的主要内容,如果未能解决你的问题,请参考以下文章

多态实现之虚函数

C++之虚函数和多态

9-3:C++多态之多态的实现原理之虚函数表,虚函数表指针静态绑定和动态绑定

虚函数实现原理之虚函数表

C++面试题之虚函数(表)实现机制

C++之虚函数与虚继承详解