為什么要父類引用指向子類對象而不直接子類引用指向子類對象? 這樣的話子類的引用既可以用子類方法又可以用父類方法而父類的引用只能用父類的方法
2 回答
已采納

Mopel
TA貢獻12條經驗 獲得超4個贊
就我遇到的開發中的應用場景,用到多態的地方主要有以下幾個
在控制層中,開發時首先定義的是接口方法,這樣就無需在知道后臺服務和本地緩存的具體實現細節的情況下進行開發.同時根據不同的數據來源(緩存,數據庫,網絡)都是有用同一套接口方法,也方便后期的代碼更換,不用查找替換所有類的引用,只用切換類的依賴實現就行了.
方便用工廠模式產生子類,例如DialogFragment,就經常應用工廠方法來產生,這時返回父類形式的子類對象,在代碼書寫上更快,更方便

HansonQ
TA貢獻223條經驗 獲得超56個贊
那要是父類是一個接口,那不更加方便。
Map<String,Object>?map?=??new?HashMap<String,Object>(); 這個在后期開發的時候用的太多了,一般都是?提供一個接口,在提供一個實現類。接口對外暴露,這樣的話調用接口的人就不會知道實現細節。
添加回答
舉報
0/150
提交
取消