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

歡迎訪問 生活随笔!

生活随笔

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

C#

C#中理解接口以及接口的作用

發布時間:2023/12/13 C# 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C#中理解接口以及接口的作用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在C#的開發中,接口是非常重要也非常好用的。可是很多時候很多人都不是很了解接口的做用,以及該如何使用。下面我們就來理解接口的作用,并看看如何使用吧。
假設我們公司有兩種程序員:VB程序員,指的是用VB寫程序的程序員,用clsVBProgramer這個類表示;Delphi程序員指的是用?Delphi寫程序的程序員,用clsDelphiProgramer這個類來表示。?每個類都有一個WriteCode()方法。定義如下:
  • class?clsVBProgramer()
  • {
  • ??WriteCode()
  • ??{
  • ?????//用VB語言寫代碼;
  • ??}
  • }
  • class?clsDelphiProgramer()
  • {
  • ??WriteCode()
  • ??{
  • ????//用Delphi語言寫代碼;
  • ??}
  • }
  • ?

    現在公司來了一個項目,要求派某個程序員寫一個程序。

  • class?clsProject()
  • {
  • ??WritePrograme(clsVBProgramer?programer)//用VB寫代碼
  • ??{
  • ????programer.WriteCode();
  • ??}
  • ??WritePrograme(clsDelphiProgramer?programer)//重載方法,用Delphi寫代碼
  • ??{
  • ????programer.WriteCode();
  • ??}
  • }
  • //在主程序中我們可以這樣寫:
  • main()
  • {
  • ???clsProject?proj=new??clsProject;
  • ???//如果需要用VB寫代碼
  • ???clsVBProgramer?programer1=new?clsVBProgramer;
  • ???proj.WritePrograme(programer1);
  • ???//如果需要用Delphi寫代碼
  • ???clsDelphiProgramer?programer2=new?clsDelphiProgramer;
  • ???proj.WritePrograme(programer2);
  • }
  • 但是如果這時公司又來了一個C#程序員,我們怎么改這段程序,使它能夠實現用C#寫程序的功能呢?我們需要增加一個新類?clsCSharpProgramer,同時在此clsProject這個類中要再次重載WritePrograme?(clsCSharpProgramer?programer)方法。這下麻煩多了。如果還有C程序員,C++程序員,JAVA程序員呢。麻煩大了!

    但是如果改用接口,就完全不一樣了:
    首先聲明一個程序員接口:

  • interface?IProgramer()
  • {
  • ??WriteCode();
  • }
  • 然后聲明兩個類,并實現IProgramer接口:
  • class?clsVBProgramer():IProgramer
  • {
  • ??WriteCode()
  • ??{
  • ?????//用VB語言寫代碼;
  • ??}
  • }
  • class?clsDelphiProgramer():IProgramer
  • {
  • ??WriteCode()
  • ??{
  • ????//用Delphi語言寫代碼;
  • ??}
  • }
  • //對clsProject這個類進行一下修改:
  • class?clsProject()
  • {
  • ??WritePrograme(IProgramer?programer)
  • ??{
  • ????programer.WriteCode();//寫代碼
  • ??}
  • }
  • main()
  • {
  • ???clsProject?proj=new??clsProject;
  • ???IProgramer?programer;
  • ???//如果需要用VB寫代碼
  • ???programer=new?clsVBProgramer;
  • ???proj.WritePrograme(programer);
  • ???//如果需要用Delphi寫代碼
  • ???programer=new?clsDelphiProgramer;
  • ???proj.WritePrograme(programer);????
  • }
  • 如果再有C#,C,C++,JAVA這樣的程序員添加進來的話,我們只需把它們相關的類加進來,然后在main()中稍做修改就OK了。擴充性特別好!像下面這樣添加一個CSharp程序員添加進來:

  • //clsProject類和IProgramer都無須改變,只需要再寫一個CSharp程序員的類就可以了
  • class?clsCSharpProgramer():IProgramer?//記住,要實現IProgramer接口
  • {
  • ??WriteCode()
  • ??{
  • ????//用CSharp語言寫代碼;
  • ??}
  • }
  • //在使用的時候如下:
  • main()
  • {
  • ???clsProject?proj=new??clsProject;
  • ???IProgramer?programer;
  • ???//如果需要用CSharp寫代碼
  • ???programer=new?clsCSharpProgramer;
  • ???proj.WritePrograme(programer);
  • }
  • 這樣我們如果把clsProject這個類封成一個組件,那么當我們的用戶需要要擴充功能的時候,我們只需要在外部做很小的修改就能實現,可以說根本就用不著改動我們已經封好組件!是不是很方便,很強大!

    轉載于:https://www.cnblogs.com/ttlive/archive/2008/09/17/2191365.html

    創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

    總結

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

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