赤兎ラボ

コーディングからバージョン管理、業務効率化までをまとめます。

Generic Interfaceとかいうやつ

Genericなインターフェースって実装しようとするとどうなるんだろうと思ってやってみました。JetBrains Riderによる補完された答えは以下の通りです。
そんな定義の仕方があるんだなーって参考になったのでご紹介です。


public interface ITestInterface<T>
{
    T GetData();
}

public class TestData{}
public class SamleData{}

public class TestScript : monobehaviour, ITestInterface<TestData>, ITestInterface<SamleData>
{
    TestData ITestInterface<TestData>.GetData()
    {
        throw new System.NotImplementedException();
    }

    SamleData ITestInterface<SamleData>.GetData()
    {
        throw new System.NotImplementedException();
    }
}