你設(shè)想一下 要是你在程序里面new了 過了一段時(shí)間你發(fā)現(xiàn)你new的這個(gè)對象有bug,或者說大一點(diǎn)你想直接換一個(gè)持久層框架。那么這個(gè)時(shí)候你就必須要動源代碼了,一個(gè)設(shè)計(jì)良好的程序應(yīng)該是對修改關(guān)閉,對擴(kuò)展開放,這就是所謂的開閉原則。然后用spring就不一樣了,你要換,只需要再寫一個(gè)類,編譯過后和其他的文件放在一起,然后改改配置文件就可以,絲毫不用動源碼。 spring真正實(shí)現(xiàn)了解耦
因?yàn)樗萌萜鱽韯?chuàng)建對象
這說明你還沒有弄懂多態(tài)是什么東西,不NEW這樣是依賴的抽象,沒有具體的東西,可以方便以后更換,如果代碼里出現(xiàn)的NEW那么你依賴的是具體,小項(xiàng)目如果要換你可以一個(gè)一個(gè)改,大項(xiàng)目,N多文件,你那手改,靠眼看,那不是費(fèi)老大勁了嗎?說白了,不new就是為了方便以后可以換!