用JAVA写一个程序,实现为一家饮品店设计,实现饮品结算功能,该店有coffee和tea两种饮品,coffee可以添加milk和sugar等辅料,tea可以增加orange和lemon等辅料,辅料同样需要计算价格
时间: 2024-10-17 08:05:55 浏览: 29
当然可以,这里是一个简单的Java程序示例,用于实现饮品店的结算功能。我们将创建一个`Drink`类作为基类,然后分别创建`Coffee`和`Tea`类作为具体的子类,并包含各自的辅料及其价格。最后,我们有一个`Calculator`类来处理结算。
```java
// 定义饮料基类
public class Drink {
private String name;
private double price;
public Drink(String name, double price) {
this.name = name;
this.price = price;
}
// 获取基础价格
public double getPrice() {
return price;
}
// 简单的结算方法,这里只返回基础价格
public double calculateTotalPrice() {
return price;
}
}
// 特定饮品类:咖啡
public class Coffee extends Drink {
private double milkPrice = 5.0;
private double sugarPrice = 3.0;
public Coffee(String name, double coffeePrice) {
super(name, coffeePrice);
}
// 添加牛奶和糖的价格到总价格
public double calculateTotalPriceWithCondiments() {
return super.getPrice() + milkPrice + sugarPrice;
}
}
// 特定饮品类:茶
public class Tea extends Drink {
private double orangePrice = 4.0;
private double lemonPrice = 2.0;
public Tea(String name, double teaPrice) {
super(name, teaPrice);
}
// 添加橙汁和柠檬的价格到总价格
public double calculateTotalPriceWithAdditives() {
return super.getPrice() + orangePrice + lemonPrice;
}
}
// 结算工具类
public class Calculator {
public static void main(String[] args) {
// 创建实例并结算
Coffee coffee = new Coffee("Espresso", 10.0);
System.out.println("Coffee with milk and sugar total: " + coffee.calculateTotalPriceWithCondiments());
Tea tea = new Tea("Green Tea", 8.0);
System.out.println("Tea with orange and lemon total: " + tea.calculateTotalPriceWithAdditives());
}
}
```
在这个例子中,用户可以根据选择的不同,通过`calculateTotalPriceWithCondiments()`或`calculateTotalPriceWithAdditives()`方法得到最终的结算金额。
阅读全文