程式設計思想 控制反轉(IOC)及依賴注入(DI)

2022-03-09 02:30:06 字數 576 閱讀 1501

1.什麼是依賴注入

在物件導向的程式語言中,乙個物件的行為方法往往需要外界的物件的行為協助才能完成。

例如:小李去atm機取錢,那小李的取錢的整個行為的完成需要atm例項取款行為的協助才能完成。

public

class

people

}

就上面列舉的例子,我們們可以總結出:小李去atm取錢的行為,必須使用atm才能完成。我們也可以講:atm與atm取錢的動作存在依賴關係。依賴物件的建立也就成為了依賴注入所要解決的問題。依賴注入的方式一般分為兩種型別:依賴注入(dependency injection,簡稱di)和依賴查詢(dependency lookup)。

2.依賴注入能解決問題

解決物件之間呼叫的耦合關係。

3.依賴注入及如何實現依賴注入

顧名思義依賴注入就是依賴物件注入到實現某個行為的類。注入的方式包括:屬性注入,建構函式注入。

屬性注入就是:依賴物件通過屬性的方式注入到類,建構函式注入:依賴物件的注入通過構造函式引數實現。

不論是通過屬性方式注入還是建構函式的注入,依賴函式的建立一般都是通過反射方式進行建立。

IOC控制反轉思想

傳統的開發需要程式設計師自己手動的new例項化乙個物件,但這種模式如果使用者需求發生改變往往會需要重新修改 例如 public inte ce userdao public class userdaoimpl implements userdao 使用者需求改變,增加userdao的實現 publi...

IOC控制反轉(依賴注入)

一。什麼叫控制反轉 moattack 墨攻劇本需要乙個英雄,去喊話,墨者革離 這時候劇本就控制liudehua 劉德華 去喊話。這個演員不一定確定是劉德華,我們可能找其他人來喊話,但是這個人必須有乙個功能喊話。所以我們定義了乙個角色介面 geli 演員實現這個介面。我們需要實現劇本只是依賴角色。而不...

ioc 控制反轉之依賴注入

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