熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

C#實現多個接口描述

2013-11-12 23:38:28  來源: .NET編程 

  在向大家詳細介紹C#實現多個接口之前首先讓大家了解下接口與抽象類然後全面介紹C#實現多個接口

  接口是一種主干類包含方法簽名但是沒有方法的實現在這個方面接口與抽象類一樣只包含抽象方法C# 接口非常類似於 Java 接口工作原理基本一樣

  接口的所有成員都定義為公共成員並且接口不能包含常量字段(私有數據成員)構造函數析構函數或任何類型的靜態成員如果為接口的成員指定任何修飾符編譯器將會產生錯誤

  為了C#實現多個接口我們可以從接口派生類這樣的派生類必須為所有接口的方法提供實現除非派生類聲明為抽象的

  接口的聲明與 Java 完全一樣在接口定義中通過單獨使用 get 和 set 關鍵字屬性僅指示它的類型以及它是只讀的只寫的還是可讀寫的下面的接口聲明了一個只讀屬性

  public interface IMethodInterface

  {

  // method signatures  void MethodA();

  int MethodB(float parameter bool parameter);

  // properties  int ReadOnlyProperty

  {

  get;

  }

  }

  用一個冒號來代替 Java 的實現關鍵字類就可以繼承此接口實現類必須提供所有方法的定義以及任何必需的屬性訪問器

  public class InterfaceImplementation : IMethodInterface

  {

  // fields  private int count = ;

  private int ID;

  // implement methods defined in interface  public void MethodA()

  {    }

  public int MethodB(float parameter bool parameter)

  {

    return integerVariable;

  }

  public int ReadOnlyProperty

  {

  get

  {

  return count;

  }

  }

  // add extra methods if required

  }

  C#實現多個接口

  通過使用下面的語法一個類可以讓C#實現多個接口

  public class MyClass : interfacename interfacename interfacename 如果C#實現多個接口則成員的名稱會存在二義性通過使用屬性或方法名的完全限定符可以解決這個問題換句話說通過使用方法的完全限定名來指示它屬於哪個接口(例如屬於 IMethodInterfaceMethodA)派生類可以解決這種沖突


From:http://tw.wingwit.com/Article/program/net/201311/11172.html
  • 上一篇文章:

  • 下一篇文章:
  • Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.