相关疑难解决方法(0)

C# - 可以隐藏公开继承的方法(例如,对派生类进行私有)

假设我有公共方法A和B的BaseClass,我通过继承创建DerivedClass.

例如

public DerivedClass : BaseClass {}
Run Code Online (Sandbox Code Playgroud)

现在我想在DerivedClass中开发一个使用A和B的方法C.有没有办法可以在DerivedClass中将方法A和B重写为私有,这样只有方法C才会暴露给想要使用我的DerivedClass的人?

c# class derived

56
推荐指数
5
解决办法
4万
查看次数

强制覆盖基类的方法

我有以下代码:

public partial class Root : ICustomInterface
{
    public virtual void Display()
    {
        Console.WriteLine("Root");
        Console.ReadLine();
    }
}
public class Child : Root
{
    public override void Display()
    {
        Console.WriteLine("Child");
        Console.ReadLine();
    }
}
class Program
{
    static void Main(string[] args)
    {
        Root temp;
        temp = new Root();
        temp.Display();
    }
}

Output: "Root"
Desired output: "Child"
Run Code Online (Sandbox Code Playgroud)

当我实例化一个Root对象并调用该Display()方法时,我想显示重写方法,Child这是可能的.

我需要这个,因为我必须创建一个插件,该插件是基本代码的扩展Display(),并使Root类的方法无效并仅实现插件的方法Child

c# inheritance overriding interface partial-classes

1
推荐指数
1
解决办法
291
查看次数