Java 在对象中创建对象

标签 java object

我正在尝试创建披萨菜单。我有 3 节课,

  • PizzaBase(具有获取/设置底座厚度的方法 [薄盘或深盘])
  • PizzaTopping,同样使用 get/set 方法 对于配料类型
  • 披萨,我的成本变量存储在其中 通过继承在 3 个类中使用。

作为成本变量,用于底料、配料和整个披萨本身。

现在我的问题是,我将如何创建一个 Pizza 对象,它又创建 1 个基础对象和一些配料对象,每个对象都有一个价格?

我可以弄清楚如何计算总体价格,我只是在对象中创建对象时遇到了一些困难。

 public class PizzaTopping extends Pizza{

private String topping;




public String getTopping(){
    return this.topping; 
}

public void setTopping( String topping ){
    this.topping = topping;

    }

}



   public class PizzaBase extends Pizza{

  private String base;  


    public void setBase( String base ){
    this.base = base;
    }

    public String getBase(){
        return this.base;
    }




 }




 public class Pizza {
private double cost;

public void setCost( double cost ){
    this.cost = Math.abs(cost);
}
public double getCost(){
    return this.cost; 
}


public void makingPizza(){
    PizzaBase b = new PizzaBase();



}

 }

最佳答案

用 CostableItem 类替换 Pizza 类:

public class CostableItem {
 private double cost;

 public void setCost( double cost ){
    this.cost = Math.abs(cost);
 }
 public double getCost(){
    return this.cost; 
 }
}

然后将其扩展到配料和底座中:

public class PizzaBase extends CostableItem {...}
public class PizzaTopping extends CostableItem {...}

之后创建一个名为 Pizza 的类,它有一个底料和多种配料:

public class Pizza{
 private PizzaBase base;
 private ArrayList<PizzaToppings> toppings;
 //..
}

关于Java 在对象中创建对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20525354/

相关文章:

Java 流 .orElseThrow

java - 需要返回单吗? - 编码新手

Javascript客户端无法连接到java服务器

java - 按姓氏对对象数组进行排序java

java - 通过 SSH 将 Jconsole 连接到远程 JVM

javascript - 将 localstorage 对象放入变量中

java - 在 Java 中获取屏幕大小作为静态变量

javascript - Angular 5,在数组中添加新行并保存

java - 在 Java 中将列表的列表保存在对象文件中

java - 多个编辑文本