我们可以重载被覆盖的方法吗?

SVT*_*002 1 c# oop inheritance overloading

我是C#的新手.我理解继承的概念.我试图知道被覆盖的方法是否可以重载,我用谷歌搜索但无法找到一个好的答案.我也尝试使用以下代码.在代码中,我正在访问重载方法的重载方法,当我调试这个程序时,它不会在屏幕上返回任何输出.所以我对被覆盖的方法是否可以重载感到困惑?

public class method1
{
    public virtual void PrintName()
    {
        Console.WriteLine("Hello world");
    }
}

public class method2 : method1
{
    public override void PrintName()
    {
        Console.WriteLine("Hello World Overriden");
    }

    public string PrintName(String strPolymorphism)
    {
        return strPolymorphism;
    }
}

class Program
{
    static void Main(string[] args)
    {
        method2 m2 = new method2();
        m2.PrintName("method overloading is possible?");
    }
}
Run Code Online (Sandbox Code Playgroud)

Sel*_*enç 5

你正在做的是超载而不是覆盖.您可以根据需要多次添加具有相同名称和不同签名的方法.

在您的方法中,您只是返回string而不显示它.该方法与其他带0参数的重载无关.