1
我是新來的春天和閱讀在線春參考。使用構造函數注入(CI)的優點之一是因爲CI是不可變的,我知道這意味着它不能被修改。但是,這是怎麼發生的,請舉例說明CI如何促進不變性?感謝春季施工注射如何促進不變性?
我是新來的春天和閱讀在線春參考。使用構造函數注入(CI)的優點之一是因爲CI是不可變的,我知道這意味着它不能被修改。但是,這是怎麼發生的,請舉例說明CI如何促進不變性?感謝春季施工注射如何促進不變性?
這是一個不可變豆,感謝到CI
class B1 {
private final int x;
B1(int x) {
this.x = x;
}
}
的context.xml
<bean id="b1" class="test.B1">
<constructor-arg value="1"/>
</bean>
好,非常感謝,因爲我們不能在setter注入中使用final屬性,所以我們可以將它與CI一起使用,所以當我們需要object是不可變的時候,CI就是注入。 – user1999453
傳遞您的初始值到構造允許與這些初始值來構造的對象。然後,你只用getter寫對象,不要設置setter(因爲你已經通過構造函數設置了狀態,不需要setter)。 –