如何在c#中隐藏类中的函数?

Vik*_*oss 0 c# constructor method-hiding

我需要根据传递给c#中构造函数的参数隐藏类中的几个方法.我该怎么做?提前致谢!

更多信息:我参与了这个GUI开发,他们拥有一个API,可以访问硬件中的寄存器.现在他们正在发布一个更新的硬件,所以我需要支持新旧的硬件(旧的一个具有较旧的删除和一些新的寄存器).

此外,我需要保留一个名为"API"的类,就像我们在很多地方使用它一样.因此,排除了使用具有不同名称的较新API的想法.

最后,我得到了这个想法,将新版本包含在旧版本中,只是有条件地隐藏了注册表访问方法.

Kei*_*las 5

你不能切换成员的可见性.....最好的办法是拥有隐藏成员的不同界面.

public interface IName
{
   string Name { get; set; }
}


public interface INumber
{
   string PhoneNumber { get; set; }
}


public class Worker : IName, INumber
{
    public string Name { get; set; }
    public string PhoneNumber { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

所以要么通过IName或INumber接口使用Worker,它会隐藏类中的其他成员....