C # Interface (Interface)
Interface define a interface que todas as classes devem herdar seguir a sintaxe do contrato. Interface define a sintaxe do contrato"que" parte da classe derivada define o contrato de sintaxe "como fazer"seção.
Interface define as propriedades, métodos e eventos, que são membros da interface. Interface contém apenas a membros de declaração. A definição de membros é da responsabilidade da classe derivada. Interface fornece uma estrutura de padrão classe derivada deve seguir.
classes abstratas e interfaces de forma semelhante, mas eles são usados principalmente quando apenas alguns métodos a partir da declaração de classe base é implementado por uma classe derivada.
interface de declaração
palavra-chaveinterface de interface declara que é semelhante à declaração de classe.O padrão é a declaração de interface pública. Aqui está um exemplo de uma declaração de interface:
public interface ITransactions { // 接口成员 void showTransaction(); double getAmount(); }
Exemplos
O exemplo a seguir ilustra a implementação acima da interface:
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(); } } }
Quando o código acima é compilado e executado, ele produz os seguintes resultados:
Transaction: 001 Date: 8/10/2012 Amount: 78900 Transaction: 002 Date: 9/10/2012 Amount: 451900