C#基本

[C#] インターフェイスを作成する(interface)

2021年11月18日

インターフェイスの作成と実装のサンプルです。

構文

構文

interface <インターフェイス名>{
  //定義
}

サンプル

例)インターフェイス「ISampleInterface」を定義する


interface ISampleInterface
{
  //このようにメンバー変数を定義することはできません。
  //int a = 0;

  string getName();

  int getAge();
}

上記SampleInterfaceを実装したクラスの生成例は、以下のようになります。


class TestClass : ISampleInterface
{
  string name = "鈴木";
  int age = 30;

  public string getName() {
    return name;
  }

  public int getAge() {
    return age;
  }
}

例えば上のコードでgetAge()を実装していない場合は、以下のようなエラーが発生します。

エラー CS0535 'TestClass ' はインターフェイス メンバー 'SampleInterface.getAge()' を実装しません

インターフェイスの特徴

C#のインターフェイスは以下のような特徴があります。

  • メンバー変数は定義できない
  • staticメソッドは定義できない
  • 定義したメソッドはすべてpublic abstractとなる
  • クラス実装時、複数のインターフェイスを実装できる(多重実装)
  • インターフェイスの継承もできる(多重継承)

備考

  • Interfaceを使用するとメソッドの定義を強制させることができます。
    そのため、複数人で開発する場合などで作りを一定に保つことができます。
  • 慣例的にインターフェイス名の先頭は「I」(大文字のI)を付けることが多いです。

-C#基本