假設(shè)我有一個 A 類:public class A { @Autowire embeddedKafka;}假設(shè)下面的類擴(kuò)展了 A:@SpringBootTestpublic class B extends A {}現(xiàn)在,當(dāng)創(chuàng)建 B 類的對象時,將調(diào)用 A 類的構(gòu)造函數(shù)。我想知道embeddedKafka實(shí)例是否會是autowired?在我的測試中,這就是我觀察到的。我的問題是:當(dāng)沒有A創(chuàng)建實(shí)例時,為什么 Spring 會自動裝配embeddedKafka實(shí)例?
1 回答

忽然笑
TA貢獻(xiàn)1806條經(jīng)驗 獲得超5個贊
B extends A. 所以 B 的一個實(shí)例就是 A 的一個實(shí)例。 所以當(dāng) B 的一個實(shí)例被創(chuàng)建時,A 的一個實(shí)例也被創(chuàng)建(就像,當(dāng)你制造一個女嬰時,你也會制造一個嬰兒人類,因為女孩是人)。您自己告訴它:將調(diào)用 A 類的構(gòu)造函數(shù)。
如果正在調(diào)用類構(gòu)造函數(shù),則根據(jù)定義正在構(gòu)造該類的實(shí)例。
添加回答
舉報
0/150
提交
取消