在C#中,子类可以通过使用override关键字来覆盖父类的方法
using System;
class ParentClass
{
public virtual void PrintMessage()
{
Console.WriteLine("This is the parent class method.");
}
}
class ChildClass : ParentClass
{
public override void PrintMessage()
{
Console.WriteLine("This is the child class method.");
}
}
class Program
{
static void Main(string[] args)
{
ParentClass obj1 = new ParentClass();
ChildClass obj2 = new ChildClass();
obj1.PrintMessage(); // 输出: This is the parent class method.
obj2.PrintMessage(); // 输出: This is the child class method.
}
}
在这个例子中,ChildClass继承了ParentClass。ParentClass中的PrintMessage方法被声明为virtual,这意味着它可以在子类中被覆盖。ChildClass使用override关键字覆盖了PrintMessage方法,因此当我们调用obj2.PrintMessage()时,将执行子类中的实现。