どのように基本クラスから派生し、C#でインターフェイスを実装できますか?

私は次のクラスを持っています:

public class ContentService : IContentService

私はBaseServiceクラスを作り、そこでいくつかの共通の機能を実装したいと思います。しかし、私はまだすべてのIContentServiceメソッドを実装したいと思います。

この行を修正して、インタフェースを実装し、BaseServiceから継承するようにするにはどうすればよいですか?

1

3 答え

public class ContentService: BaseService, IContentService
{
}

必要な数だけインターフェイスを追加し、リストには最大1つの基本クラスを追加できます。カンマを使用して、それぞれの追加インターフェイスを分けるだけです。

基本クラスは、リストの最初の項目である必要はありません。

4
追加された

public class ContentService:BaseService、IContentService

BaseServiceから継承し、IContentServiceインターフェイスを実装します。

また、基底クラスの抽象クラス/メソッドを検索することもできます。

1
追加された

基本クラスとインタフェースの両方からクラスを継承することができます。基本クラスにインターフェイスを実装すると、すべてのインターフェイスメソッドを実装しないオプションが提供されます。次の例のように:

interface ITestInterface
{
    void Test();
    string Test2();
}

public class TestBase : ITestInterface
{
    #region ITestInterface Members

    public void Test()
    {
        System.Console.WriteLine("Feed");
    }

    public string Test2()
    {
        return "Feed";
    }

    #endregion
}

public class TestChild : TestBAse, ITestInterface
{
    public void Test()
    {
        System.Console.WriteLine("Feed1");
    }
}

public static void Main(){
    TestChild f = new TestChild();
    f.Test();

    var i = f as ITestInterface;

    i.Test();
    i.Test2();//not implemented in child but called from base.
}
1
追加された