這是一個普遍問題。我正在嘗試理解多態的概念,同時創建一個高效的程序或至少一個工作程序。多態性,ArrayList和對象
程序將添加,刪除,搜索和顯示設備。
比方說,我要創建一個超一流的廠房和三種不同的植物(花,真菌,雜草)從工廠延伸。
問題: 我希望能夠建立一個工廠的ArrayList或陣列。 這可能嗎? 或者最合乎邏輯的事情是什麼?
上面的代碼只是爲了說明我的觀點。不以任何方式正確。
class Plant{
//atributes
//constructor
//setters and getters
}
class Flower extends Plant{
//with some different attributes
}
class Fungus extends Plant{
//with some different attributes
}
class Weed extends Plant{
// with some different attributes
}
public class PlantList{
public static void main(String[] args){
//HERE is where I'm confused
ArrayList<Plant> plantList= new ArrayList<Plant>();
// OR
Plant plantList= new Plant[25];
plantList[0] = new Flower();
plantList[1] = new weed();
plantList[2] = new fungus();
//or completely way off?
//add()
//remove()
//search()
//display()
}
有人可以解釋我如何將樹的不同類型的植物添加到Array或ArrayList?
您的代碼中存在一些小的一致性拼寫錯誤;選擇一個拼寫'植物' –
@BenKnoble正如我上面提到的那不是一個真正可行的代碼。我試圖打字得非常快。沒想到會冒犯任何人。感謝您的幫助! –
不是沒有罪行;它對SO的一個驕傲點是,問題(和答案)看起來很專業。如果你有機會,你可能會清理它,因爲你知道。 –