依賴倒置
啥是依賴倒置?依賴倒置是SOLID原則之一,詞的字面意思就是將依賴關系的倒置,
其實依賴倒置大家早就會了,這個實際上就是面向介面編程,舉個例子,現在電子產品更新換代快,可能沒過多久咱們就想換一臺電腦玩玩,即使電腦的品牌不同,但我們還是可以正常使用,總不會換個牌子就不會用了吧,
所以如果用代碼表示的話,我們用介面IPC來代替具體的類,然后各個類去實作它的programming方法,
public interface IPC{
void programming();
}
public class User {
private IPC pc;
//如果寫成private Dell dell;
//那我們換成聯想的電腦就麻煩了
public User(IPC pc) {
this.pc = pc;
}
public void usePC(){
pc.programming();
}
}
為啥叫它倒置呢,因為


是不是箭頭倒過來了呢??
依賴注入與控制反轉
依賴注入是實作控制反轉的具體手段,這倆聽起來高大上,其實...
public class Main {
public static void main(String[] args) {
//創建物件
Dell dell=new Dell();
//依賴注入
User user=new User(dell);
user.usePC();
}
}
依賴注入指的是不在類內部使用new來創建依賴物件,而是將其在外部創建好后,通過建構式或者賦值函式注入進類中,也就是當引數傳進去,
而控制反轉就是依賴注入中說的,將依賴類實體化的控制權交給外部邏輯處理,我不心系你這東西的創建,我只關心你提供的功能,一切都按我的標準指定好,拿來用就行,
比如我們筆記本電腦的各個部分是不同廠家生產的,筆記本電腦廠商只需把標準給各個零件生產商,讓他們按要求生產,自己最后組裝拿來用就好了,這樣我們就達到了解耦的目的,
控制反轉容器
因為我們在程式設計時采用了依賴注入,那么不可避免的,我們要在程式里寫大量的new,但物件的創建與依賴注入跟具體的業務并無關系,我們可不可以將其抽象成框架呢?
于是我們就有了IOC容器或者說依賴注入框架,只需要簡單配置一下就可以由框架自動創建物件、管理物件以及依賴注入這些原本需要我們自己來做的事情,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/136616.html
標籤:Java
上一篇:Java陣列
下一篇:java開發-flyway
