c#

c#覆盖父类方法是什么

小亿
82
2024-09-03 19:41:41
栏目: 编程语言

在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继承了ParentClassParentClass中的PrintMessage方法被声明为virtual,这意味着它可以在子类中被覆盖。ChildClass使用override关键字覆盖了PrintMessage方法,因此当我们调用obj2.PrintMessage()时,将执行子类中的实现。

0
看了该问题的人还看了