真是一個簡單的問題。如何根據Java中的變量值調用不同的構造函數
class salad
class chef_salad extends salad
class ceasar_salad extends salad
所以我有一個變量type
,我想創建一個基於類型合適的對象。
顯然,我可以做
if(type.equals("chef"){ salad s = new chef_salad(); }
我想我甚至可以作出這樣一個返回salad
對象,而是一個靜態方法,這真的是最好的辦法還是有更好的方式,通過構造函數來做到這一點?
ps。虛構的例子
只是一個側面說明,如果你不希望人們誰都會讀/維持你的Java代碼到說壞話,堅持java代碼約定:):http://en.wikipedia.org/wiki/Naming_convention_(programming)#Java –