IOC控制反轉思想

2021-10-25 21:36:42 字數 1232 閱讀 3335

傳統的開發需要程式設計師自己手動的new例項化乙個物件,但這種模式如果使用者需求發生改變往往會需要重新修改**,例如:

public

inte***ce

userdao

public

class

userdaoimpl

implements

userdao

}//使用者需求改變,增加userdao的實現

public

class

usermysqldaoimpl

implements

userdao

}public

class

useroracledaoimpl

implements

userdao

}public

inte***ce

userservice

public

class

userserviceimpl

implements

userservice

}

而運用ioc思想理論用set動態注入,就可避免這種情況,**如下:

public

class

userserviceimpl

implements

userservice

@override

public

void

getuser()

}public

class

mytest

}

區別是原來使用者需求改變,需要修改業務層的例項化**(new**),主動權在業務層,而現在主動權在使用者手中。如下圖

很明顯,通過set注入能將程式的主動權交給使用者而非程式設計師,也就是說程式設計師不用去管理物件的建立,而是更專注於業務層的功能實現,從而減少了系統的耦合性。

控制反轉是一種通過描述(xml配置或註解)並通過第三方去生成或獲取特點物件的一種方式,在spring中實現控制反轉的是ioc容器,實現方法是依賴注入

控制:即控制物件的建立

反**程式本身不自己主動建立物件,而是被動的接收物件。

IoC控制反轉

首先假設有乙個需求,類business需要呼叫類dependency的方法f 1 按照日常的做法,得到下面的 類dependency public class dependency 類business public class business public void dosomething 2 對...

IOC 控制反轉

ioc是物件導向程式設計中的一種設計原則,可以借助 第三方 來減低計算機 之間的 耦合度 其中最常見的方式叫做依賴注入 dependency injection,簡稱di 還有一種方式叫 依賴查詢 dependency lookup 通過控制反轉,物件在被建立的時候,由乙個調控系統內所有物件的外界實...

IOC 控制反轉

想說說ioc inversion of control,控制反轉 這是spring的核心,貫穿始終。所謂ioc,對於spring框架來說,就是由spring來負責控制物件的生命週期和物件間的關係。這是什麼意思呢,舉個簡單的例子,我們是如何找女朋友的?常見的情況是,我們到處去看 有長得漂亮身材又好的m...