IOC控制反轉(依賴注入)

2021-08-08 12:20:29 字數 1165 閱讀 8547

一。什麼叫控制反轉

moattack 墨攻劇本需要乙個英雄,去喊話,「墨者革離」。這時候劇本就控制liudehua(劉德華)去喊話。

這個演員不一定確定是劉德華,我們可能找其他人來喊話,但是這個人必須有乙個功能喊話。所以我們定義了乙個角色介面(geli)演員實現這個介面。

我們需要實現劇本只是依賴角色。而不依賴演員。這個時候我們引入乙個新的物件。導演

public moattack 

public

void

citygateask()

}----------

public

inte***ce geli

public class liudehua

}public class director

}

這樣就講劇本和劉德華解耦了。可以安排不同的人來出演。

ioc依賴注入有三種方式。

建構函式注入

屬性注入

介面注入

public moattack 

public

moattack(geli geli)

public

void

citygateask()

}

以上就是建構函式依賴注入,和屬性方法依賴注入的對比。

對於介面注入它的效果和屬性注入無本質區別,有點多次一舉的意思。

以上是協助類注入,還是自己寫**。但是我們的角色,導遊可能都是海選的,即角色不是由導演選擇,三者解耦。這時候就要用到容器了

spring就是這樣的乙個容器。它通過配置檔案或者註解描述類與類之間的依賴關係,自動完成類的初始化和依賴注入的工作。

先例項化,然後依賴注入。

ioc 控制反轉之依賴注入

ioc是控制反轉的意思,所謂的依賴注入更像是注入依賴。當你想在a的內部呼叫b物件的某個功能時,我們說這個是a依賴於b了。那當你在a的內部例項化了b,那麼你就把這兩個類耦合了在一起。以後你修改一些東西自然就麻煩了許多,那麼我們可以怎麼做呢?我們可以使用ioc將乙個b的例項從外部設定給a,這樣就做到了低...

Spring 依賴注入(IoC) 控制反轉

依賴注入 dependecy injection 和控制反轉 inversion of control 是同乙個概念,具體的講 當某個角色需要另外乙個角色協助的時候,在傳統的程式設計過程中,通常由呼叫者來建立被呼叫者的例項。但在spring中 建立被呼叫者的工作不再由呼叫者來完成,因此稱為控制反轉。...

IoC模式(依賴 依賴倒置 依賴注入 控制反轉)

依賴就是有聯絡,有地方使用到它就是有依賴它,乙個系統不可能完全避免依賴。如果你的乙個類或者模組在專案中沒有用到它,恭喜你,可以從專案中剔除它或者排除它了,因為沒有乙個地方會依賴它。下面看乙個簡單的示例 public class operationmain public class player 檔案...