C#インターフェイス(インターフェイス)
インターフェイスは、すべてのクラスが契約の構文に従って継承する必要があるインターフェイスを定義します。 インターフェイスは、派生クラスの一部は、セクション"を行う方法を「構文の規約を定義し、「何を」契約の構文を定義します。
インターフェイスは、インターフェイスのメンバーであるプロパティ、メソッド、およびイベントを定義します。 インタフェースは、宣言だけメンバーが含まれています。 メンバーの定義は、派生クラスの責任です。 インターフェイスは、派生クラスが従うべき標準的な構造を提供します。
抽象クラスとインタフェース同様に、しかし、基本クラスの宣言からわずか数メソッドは派生クラスで実装されたとき、彼らはほとんど使用されています。
Statementインターフェース
インタフェースinterfaceキーワードは、クラス宣言に似ていることを宣言します。 デフォルトはpublic interface宣言です。 ここではインタフェース宣言の例です。
public interface ITransactions { // 接口成员 void showTransaction(); double getAmount(); }
例
次の例では、インターフェイスの上記の実装を示しています。
using System.Collections.Generic; using System.Linq; using System.Text; using System; namespace InterfaceApplication { public interface ITransactions { // interface members void showTransaction(); double getAmount(); } public class Transaction : ITransactions { private string tCode; private string date; private double amount; public Transaction() { tCode = " "; date = " "; amount = 0.0; } public Transaction(string c, string d, double a) { tCode = c; date = d; amount = a; } public double getAmount() { return amount; } public void showTransaction() { Console.WriteLine("Transaction: {0}", tCode); Console.WriteLine("Date: {0}", date); Console.WriteLine("Amount: {0}", getAmount()); } } class Tester { static void Main(string[] args) { Transaction t1 = new Transaction("001", "8/10/2012", 78900.00); Transaction t2 = new Transaction("002", "9/10/2012", 451900.00); t1.showTransaction(); t2.showTransaction(); Console.ReadKey(); } } }
上記のコードはコンパイルされ、実行されると、次の結果を生成します。
Transaction: 001 Date: 8/10/2012 Amount: 78900 Transaction: 002 Date: 9/10/2012 Amount: 451900