C#对于调用基类中的方法有着自己独特的语句:base.FunctionName
。举个例子:
创建一个基类,在基类中声明一个虚方法Move。再创建一个类继承这个基类,在子类中重写父类的虚方法,方法中调用基类的Move方法。
public class Shape
{
public virtual void Move(Position newPosition)
{
Position.X = newPosition.X;
Position.Y = newPosition.Y;
Console.WriteLine($"moves to {Position}");
}
//...other members
}
public class Rectangle: Shape
{
public override void Move(Position newPosition)
{
Console.Write("Rectangle ");
base.Move(newPosition);
}
//...other members
}
这样就实现了对基类Move方法的调用了。