網上有無數帖子一提到什麼是ioc,答案都是千篇一律的控制反轉,自己不建立物件,交給別人建立物件。其實真正的ioc解釋起來真的很簡單,下面直接上乙個大家每天寫幾百遍的**。
這是乙個entity(private user user以上是我自己的**和本文章無關請忽略掉),在tempcount中建立user物件,這就是自己建立物件,如果我要修改user的屬性,那麼就要進入這個類中,user.id=***,user.name=***。也就是網上所說的**修改起來很麻煩。
這裡上的是構造方法(getter setter同理),我們在這個構造方法中是沒有建立user物件的,那麼user物件是哪來的呢?是在外部建立後傳遞進來的。所以在這裡就是網上所說的自己不建立物件,我總結為在需要用到該物件的時候才建立該物件,誰呼叫他,誰建立。這樣就避免了在容器啟動時就建立乙個user物件導致容器啟動緩慢,並且在修改user成員屬性的時候也會更加的方便。
綜上,ioc是物件導向中重要的體現。
另外網上說的ioc和di啥關係,spring官方文件是這樣說的 ioc/di,大家懂了吧
DATA GUARD的概念及作用
data guard的最主要的功能是冗災。當然根據配置的不同,data guard還可以具備以下特點 高可用 效能提公升 資料保護以及故障恢復等。data guard可以分為物理standby和邏輯standby兩種。二者的最大差別在於,物理standby應用的是主庫的歸檔日誌,而邏輯standby...
BFC的概念及作用
在了解什麼是bfc之前,首先得明白什麼是box formatting context 乙個決定如何渲染文件的容器 的概念 box css布局的基本單位 box是 css 布局的物件和基本單位,直觀點來說,就是乙個頁面是由很多個 box組成的,元素的型別和display屬性,決定這個box的型別,不同...
尾遞迴的概念及作用
如果乙個函式中所有遞迴形式的呼叫都出現在函式的末尾,我們稱這個遞迴函式是尾遞迴的。當遞迴呼叫是整個函式體中最後執行的語句且它的返回值不屬於表示式的一部分時,這個遞迴呼叫就是尾遞迴。尾遞迴函式的特點是在回歸過程中不用做任何操作,這個特性很重要,因為大多數現代的編譯器會利用這種特點自動生成優化的 原理 ...