1,
在定義乙個引用變數時, 心裡想的應該是:我在這裡需要乙個什麼樣的功能,我是因為需要什麼功能才建立變數的! 介面定義了功能的集合! 所以我應該是用介面來定義這個引用變數嘛! 2,
定義好了引用變數以後, 要讓它引用乙個物件, 這個物件就應該是實現了那個介面的類的例項了! 隨便乙個類, 只要它繼承實現了那個介面, 那麼它的例項都可以在這裡被引用. 3,
方法的返回型別也是要定義為介面型別, 因為, 你要記住: 我們這個方法是需要返回乙個有特定功能的物件! 同理, 方法的引數的型別也是如此!
作用:1.
介面 以及 工廠模式以及ioc模式的運用, 可以很好的減少模組之間的耦合,便於以後系統引用例項的更改!
我覺得這是介面的最大功用!(
1,假如乙個類實現了多個介面,那麼用介面型別來定義它的引用變數的話,一眼就可以明白,這裡是需要這個類的哪些個方法!
2,用介面型別定義引用變數,以後需要修改其引用的例項時,改動的地方要少一些!)
2.介面和抽象類都是對類的抽象,對類的劃分,是最高層的抽象!
定義介面型別的引用變數有什麼好處
面向介面程式設計 1,在定義乙個引用變數時,心裡想的應該是 我在這裡需要乙個什麼樣的功能。我是因為需要什麼功能才建立變數的,介面定義了功能的集合!所以我應該是用介面來定義這個引用變數嘛!2,定義好了引用變數以後,要讓它引用乙個物件,這個物件就應該是實現了那個介面的類的例項了。隨便乙個類,只要它繼承實...
變數的引用型別和非引用型別的區別
author liyuechao date 2014.8.8 algo1 3.cpp 變數的引用型別和非引用型別的區別 includevoid fa int a 在函式中改變a,將不會帶回主調函式 主調函式中的a仍是原值 void fb int a 由於a為引用型別,在函式中改變a,其值將帶回主調函...
變數的引用型別和非引用型別的區別
author liyuechao date 2014.8.8 algo1 3.cpp 變數的引用型別和非引用型別的區別 includevoid fa int a 在函式中改變a,將不會帶回主調函式 主調函式中的a仍是原值 void fb int a 由於a為引用型別,在函式中改變a,其值將帶回主調函...