欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
C# interface 接口理解

針對接口編程能幫助達到面向對象開(kāi)發(fā)和設計中"低耦合"的要求.
舉個(gè)例子:某公司有一臺特殊打印機,還可以使用一年,一年后可能換為另一種打印機,這兩種打印機都特殊而貴.所以現在的程序希望換了打印機后也少量修改就可用.
方法:
1,定義一個(gè)打印機接口.
2,定義打印機類(lèi)A,B,分別實(shí)現此接口.
3,定義一個(gè)工廠(chǎng)類(lèi),在類(lèi)中可選擇返回由A實(shí)現的接口,或者由B實(shí)現的接口.
4,在程序中使用打印機時(shí),就可以使用工廠(chǎng)類(lèi)來(lái)調用打印機,而不需要知道具體的是什么打印機.
如果打印機換了,只需要修改工廠(chǎng)類(lèi)就行了.如果有一千個(gè)地方都調用過(guò)打印機,就不需要一個(gè)一個(gè)修改.修改一個(gè)地方就行了.接口充當一個(gè)隔離層的作用.

//定義打印機接口 
interface Iprint
{
bool PrintData(string data);
}

//定義打印機類(lèi)A,實(shí)現接口,(繼承)

class PrintA:Iprint
{
public virtual bool PrintData(string data)
{
//具體業(yè)務(wù)邏輯略
}


定義打印機類(lèi)B,實(shí)現接口,(繼承)

class PrintB:Iprint
{
public virtual bool PrintData(string data)
{
//具體業(yè)務(wù)邏輯略
}
}

//定義工廠(chǎng)類(lèi)
class PrintFactory{
public Iprint CreatePrint()
{
//返回一個(gè)由打機類(lèi)A,或B實(shí)現的接口,比如
return new PrintA();
}
}

//通過(guò)工廠(chǎng)類(lèi),調用打印機
private void button1_Click(object sender,EventArgs e)
{
PrintFactory myFactory=new PrintFactory();
Iprint myPrint=myFactory.CreatePrint();        
myPrint.PrintData("這樣做很方便啊");
}

本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
.Net設計模式_工廠(chǎng)模式(3)
MFC對COM接口編寫(xiě)的支持分析
也來(lái)學(xué)學(xué)插件式開(kāi)發(fā)
c語(yǔ)言下的工廠(chǎng)模式——ipmi源碼分析
什么是接口設計?
java接口、類(lèi)與繼承
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久