public class main{
public static void main(String[] args){
Arraylist<Cart> Cart = new Arraylist();
Foods Food1 = new Foods("Bread", $10);
Foods Food2 = new Foods("Waffle", $8);
Drinks Drink1 = new Drinks("Coke", $9);
Drinks Drink2 = new Drinks("Sprite", $7);
Miscs Miscs1 = new Miscs("Soap", $5);
Miscs Miscs2 = new Miscs("Shampoo", $5);
Cart.add(Food1);
Cart.add(Food2);
Cart.add(Drink1);
Cart.add(Drink2);
Cart.add(Miscs1);
Cart.add(Miscs2);
}}
我需要做一个方法,可以添加这些数据类型到一个arraylist内的cart类。但如果我写
public void add(Arraylist <Cart> cart){
}
它只会接收推车类型的数据,所以我不能输入食物或饮料,或Miscs类型的数据,甚至有相同的细节,如名称和价格。
使用OOP。
备选办法1:
创建一个抽象类item
,该类的属性为name
和price
。食品
、饮料
和杂项
将扩展项目
public class Cart {
List<Item> itemList = new ArrayList<>();
//getter setter
public void add(Item item) {
itemList.add(item);
}
}
问题内容: 在以下代码中,我创建了一个基本抽象类。我希望所有继承自其的类都提供该属性,因此我将该属性设置为。 然后,我创建了一个名为的子类,该子类旨在提供一些功能,但仍保持抽象。中没有属性,但是python实例化了该类的对象而没有错误。一个人如何创建抽象属性? 问题答案: 从Python 3.3 开始,修复了一个错误,这意味着装饰器现在应用于抽象方法时,可以正确地标识为抽象。 注:订单的问题,你必
问题内容: 我是一名 Java 开发人员,对Object Orientation概念有很好的了解( 或者也许我这样认为 )。现在我正在学习设计模式(从头开始设计模式)。我一直在阅读有关OOPS概念抽象的文章,以简要地理解它,而阅读更多有关它的内容,使我比以前更加困惑。 据我了解,抽象是指隐藏程序的内部细节,同时将接口暴露给其他程序员,而无需担心内部细节。但是我不明白 抽象类如何适应这种抽象概念,其
抽象用于向用户隐藏函数的内部功能。他们可以与函数交互并生成结果,但不知道结果是如何生成的。 简单来说,抽象就是用来对用户隐藏不相关的数据,以降低程序的复杂度。 在 Python 中借助 ABC 模块,我们可以实现抽象。 抽象类也可以作为其他类的基石,因为你不能为抽象类创建对象,所以访问元素的唯一方法是使用继承。
我曾尝试将Laravel4.2应用程序迁移到Laravel5.0,之前在Laravel4.2中,您有一个BaseController,您创建的其他控制器可以扩展它,这意味着如果我在其中添加一个方法。其他控制器将扩展BaseController可以使用它。 现在在Laravel5.0上,他们以某种方式更改了它,而不是使用类,而是使用了一个抽象类 现在我不熟悉抽象类是什么,所以我的主要音乐会是我仍然能
下面的班级是我的主要班级。我的arraylist是“Employee”类型,并且该arraylist包含多个对象的许多元素(多态性)。所以我想知道,当用户输入一个类名时,我应该从ArrayList中打印出那个特定类的employees。例如,当用户输入“Surgeon”时,程序应该能够从ArrayList中打印出所有Surgeon雇员的。请帮忙,提前谢谢。
我通过学校为一项任务提供的简报创建了一个飞机座位预订系统。我遇到了一个我无法解决的主要问题。 摘要说明抽象类必须有一个抽象方法和大约4个公共方法。在抽象类的两个子类中,我们都必须初始化对象数组(所有普通的座位)。然而,一旦它们被初始化,我不知道如何将它们发送回抽象类(该类有一个检查未预订的飞机座位的方法,这就是我需要初始化的座位对象的地方) ArrayIndexOutOfBounds在一个应该在边