从 C# 中的接口实现几个方法的最佳方法

Best way to implement few methods from interface in c#

我们有以下接口,其中包含一些方法。

interface MyInterface
{
    string FirstName();
    string LastName();
    string City();
    string Location();
}

我们已在所需的 classes 中实现了此接口。但是,我们只想在特定 class 中实现 Location 方法,而不会在其他地方实现。那么,这将是实现这一目标的最佳方式。

我们试过如下

  1. 使用常用方法创建接口。
  2. 创建抽象class并在其中实现接口
  3. 在抽象中写具体的方法class作为Virtual
  4. 然后重写实际的方法class

但这里的问题是其他方法的实现是抽象的 class 而不是我们想要的实现 class。

无论我们以何种方式实现这一点,所有 classes 都必须相同。

感谢任何帮助。

将您的 'MyInterface' 分成 2 个接口,对于所有 类 您不想要 City 方法的接口,他们将实现没有 city 方法的接口,例如:

    interface MyInterface1
    {
        string FirstName();
        string LastName();
        string City();
    }

    interface MyInterface2 : MyInterface1 
    {
         string Location();
    }