日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > C# >内容正文

C#

C# 接口详解

發布時間:2023/12/10 C# 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C# 接口详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

概念

接口描述的是可屬于任何類或結構的一組相關行為,所以實現接口的類或結構必須實現接口定義中指定的接口成員。
定義:使用interface 關鍵字,由方法、屬性、事件、索引器或這四種成員類型的任意組合構成。另可使用new、public、protected、intenal和private等修飾符實現接口,但接口成員必須是公共的。
正常人剛接觸接口常認為接口多此一舉,畢竟直接調用方法就可以了,為什么要用接口呢。那其存在的意義是什么?
總結了一下,接口的目的在于方便類的統一管理和調用,增強約束力。
下面舉個簡單例子。

示例

interface IProgram{void Fun();}class Program:IProgram{void IProgram.Fun(){Console.WriteLine("哈哈");}static void Main(string[] args){IProgram p =new Program(); //聲明接口實例p.Fun();}}

先看上面的代碼,聲明一個接口,然后實例化調用方法,似乎我不要接口也可以實現,而且更簡單。

class Program {void Fun(){Console.WriteLine("哈哈.");}static void Main(string[] args){Program p = new Program();p.Fun(); } }

那接口在這種情況下并沒有什么用??聪旅娴拇a:

class Laugh //顯式實現接口成員 {public void Fun(){Console.WriteLine("哈哈.");} } class Cry //顯式實現接口成員 {public void Fun(){Console.WriteLine("呵呵.");} } class Program {static void Main(string[] args){Laugh p = new Laugh(); p.Fun();Cry c = new Cry();c.Fun();} } interface IProgram {void Fun(); } class Laugh: IProgram //顯式實現接口成員 {public void Fun(){Console.WriteLine("哈哈.");} } class Cry: IProgram //顯式實現接口成員 {public void Fun(){Console.WriteLine("呵呵.");} } class Program {static void Main(string[] args){IProgram p = new Laugh(); p.Fun();IProgram c = new Cry();c.Fun();} }

由上面的對比可以看出,接口適用于多個類都有共同的方法,使用接口可以對這些方法同統一調用管理。

接口繼承和類繼承的區別

  • 類繼承不僅是說明繼承,也是實現繼承;接口繼承只是說明繼承。派生類可以繼承基類的方法實現,而派生的接口只繼承了父接口的成員方法說明,而沒有繼承父接口的實現。
  • C#中類繼承只允許單繼承,但是接口繼承允許多繼承,一個子接口可以有多個父接口。
  • 參考文章如下:
    C# 接口《通俗解釋》
    C#之接口

    總結

    以上是生活随笔為你收集整理的C# 接口详解的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。