这是一个普遍问题。我正在尝试理解多态的概念,同时创建一个高效的程序或至少一个工作程序。多态性,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的一个骄傲点是,问题(和答案)看起来很专业。如果你有机会,你可能会清理它,因为你知道。 –