C#グラフィックチュートリアルの研究ノート - インターフェイス

まず、インターフェースのコンセプト
インタフェースはなくて、そのメンバーを達成するための関数のセットを指定された参照型だから、唯一のクラスと構造体は、インターフェイスを実装します。

 

第二に、インターフェースが宣言された
メソッド、プロパティ、イベント、インデクサ:データメンバを、静的メンバーは唯一の非静的メンバ関数の次のタイプを含めることができます:1.インタフェースの宣言が含まれていません。
2.インターフェイス関数メンバ宣言は、セミコロンで、任意の実装コードを含んでいません。
3.慣例により、インターフェイス名は大文字のI(インタフェース)で始まります。
クラス構造とインターフェース宣言同様4.分割してもよいです。
インタフェース宣言は、保護された、公共の内部、またはプライベート任意のアクセス修飾子を持つことができます。インタフェースのメンバーは、それが公共含めて、任意のアクセス修飾子を許可しない、暗黙的に公開されています。
例:

 

第三に、インタフェースに実装する
インターフェイスを実装するクラスのみと構造を:
1.クラスがインタフェースを実装している場合、それはインターフェースのすべてのメンバーを実装する必要があります。
2. クラスがインターフェイスを実装し、基本クラスから継承する場合、ベース・クラス名の基底クラスのリストは、すべてのインターフェイスの前に配置されなければなりません。
例:

 

第四に、インタフェースの使用
1.基準インタフェース取得するオブジェクトの基準点:
(1)キャスト:クラスは、対応するインタフェースを実装していない場合は、例外がスローされます。
例:

(2)演算子として使用します。このクラスは、対応するインタフェースを実装していない場合、nullを返します。
例:

2. 类或结构可以实现多个接口:
如果一个类实现了多接口,并且其中有些接口有相同签名和返回类型,这时,类可以实现单个成员来满足所有包含重复成员的接口,也可以为每个接口分离实现,即创建显式接口成员实现。
示例:

3. 如果类实现了多接口,我们可以获取每个接口的独立引用。
4. 实现接口的类可以从它的基类继承实现的代码。
5. 接口可以继承接口。

おすすめ

転載: www.cnblogs.com/wujuntian/p/10990355.html