您的位置:首页 > 编程语言 > C#

C#回顾学习笔记三十:虚方法的重写

2017-09-23 10:06 375 查看
如果想让父类的方法在子类中被重写,可以在父类的方法加上关键字abstract或virtual。在父类方法声明中加上关键字abstract称为抽象方法,在父类方法声明中加上关键字virtual被称为虚方法。在保证子类与父类的方法一样的情况下,子类中如果要重写方法,就加上关键字override。对父类的虚方法而言,其子类可以不必重写(被覆盖了)。

虚方法的注意事项:虚方法定义中不能包含static、abstract等修饰符。下面代码介绍简单的虚方法使用步骤。

第1步,父类代码,父类的方法添加virtual关键字标记为虚方法:
class Person
{
//父类中用virtual定义虚方法
public virtual void sayHello()
{
Console.WriteLine("你好,我是人类");
}
}
第2步,子类代码,子类的方法添加override关键字重写父类的虚方法:
class Student : Person
{
//子类中用override重写虚方法
public override void sayHello()
{
Console.WriteLine("你好,我是学生");
}
}
第3步,主函数代码,子类调用方法时重写了方法,最终调用的就是子类的方法:
class Program
{
static void Main(string[] args)
{
Student stu = new Student();
stu.sayHello();//最终调用的是子类的方法
Console.ReadKey();
}
}
虚方法的使用是实现多态的一种做法。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: