Unity 3D游戏开发 - C#面向对象 | 多态之虚方法语法
其他
2018-09-24 03:01:12
阅读次数: 0
多态简介
- 多态
- 在继承关系的前提下,实例化出不同的对象,这些对象调用相同的方法,却表现出不同的行为,即为多态。
- C#语言中体现多态有三种方式:虚方法,抽象类,接口。
虚方法语法
- 虚方法
- 在父类中使用 virtual 关键字修饰的方法,就是虚方法。
- 在子类中可以使用 override 关键字对该虚方法进行重写。
- 虚方法语法
父类:
public virtual 返回值类型 方法名()
{
方法体代码;
}
子类:
public override 返回值类型 方法名()
{
方法体代码;
}
- 例:老虎和猫继承同一个父类,实现 “叫” 虚方法。
//1.创建猫科类. CatType.cs
public virtual void Cry()
{
Console.WriteLine("我会叫");
}
//2.创建老虎类. Tiger.cs
public override void Cry()
{
base.Cry(); //创建时直接在此处输入override,空格一下,可以选择需要实现多态的方法,选择后自动产生本行代码.
Console.WriteLine("咆哮");
}
//3.创建猫类. Cat.cs
public override void Cry()
{
base.Cry();
Console.WriteLine("喵喵喵");
}
//4.主程序测试.Program.cs
Tiger t = new Tiger();
t.Cry();
Console.WriteLine(); //换行.
Cat c = new Cat();
c.Cry();
Console.ReadKey();
- 虚方法使用细节
- 将父类的方法标记为虚方法,就是在父类方法的返回值前加 virtual 关键字,表示这个方法可以被子类重写。
- 子类重写父类方法,在子类方法的返回值前加 override 关键字。
- 父类中的虚方法,子类可以重写,也可以不重写。
- 父类中用 virtual 修饰的方法,可以用于实现该方法共有的功能(比如初始化该方法)。在子类重写该方法时,使用 base 关键字调用父类中的该方法。
转载自blog.csdn.net/weixin_41232641/article/details/82715472