C#のインタフェース
C#では定数および抽象メソッドのみを持った型を作り出す、インタフェースという機能があります。
インタフェースの定義
C#ではキーワードinterfaceを使用して以下のように定義します。
interface インタフェース名 { 定数および抽象メソッドの定義 }
インタフェースに定義できるメンバは定数および抽象メソッドのみになります。
そのため宣言した定数は static final が暗黙的に付加され、メソッド・プロパティはpublic abstract になります。
インタフェースの実装
インタフェースを実装したクラスを定義するにはクラス名の後にコロンを付け、そのあとにインターフェース名を記述します。
class クラス名 : インタフェース名 { 抽象メソッドのオーバーライド }
複数のインタフェースの実装
C#ではクラスの継承は一つのクラスのみの単一継承ですが、インターフェースの場合は複数実装できます。
複数のインターフェースを複数する場合はインターフェース名をカンマで区切って記述します。
class クラス名 : インタフェース名, インタフェース名 { 抽象メソッドのオーバーライド }