【物件導向】C# 為什麼用介面例項化一個實現該介面的類?

weixin_33866037發表於2017-06-18

這是多型的體現。

首先介面不能例項化的。

實現介面的類 例項 = new 實現介面的類()// 這樣用不好嗎?

//這樣已經不是好不好的問題了,這樣的話,要介面有什麼用?

//用介面就是讓例項和實現類的耦合度降低。

//讓程式更加容擴充套件。

以下是問題之外的知識,想看可以往下,不想看跳過。

介面 例項 = new 實現介面的類A()

介面 例項 = new 實現介面的類B()

介面 例項 = new 實現介面的類C()

這樣的邏輯就是說,我們需要某個類,所以我們每次例項化它。

如果把 ABC這三個類,再用一個類封D裝起來,會怎麼樣呢?

介面 例項 = D.A

介面 例項 = D.B

介面 例項 = D.C

我們還是需要某個類,但是,我們不需要每次都例項化了,只需要找D“拿”就行。

嗯,這就是工廠模式的來由!!!!

相關文章