在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()
时,将执行子类中的实现。