• 2022-06-11
    咖啡店需要售卖各种各样的咖啡:黑咖啡(即不加任何东西的咖啡)、加糖、加冰、加奶、加巧克力、蒸汽咖啡、加压咖啡等等。顾客要买咖啡,他可以往咖啡加任意的一种或几种产品。 请对该问题采用面向对象思想进行建模。 完成顾客想要: 1.黑咖啡 2.顾客需要加冰咖啡 3.加糖加冰加奶加巧克力咖啡
  • Decorator模式,相比采用继承而造成的子类爆炸问题,采用接口组合形式则具有很好的拓展性[br][/br] interface Product { public double money(); } [br][/br] //咖啡类: class Coffee implements Product { public double money() { return 12; } } [br][/br] //加糖: class Sugar implements Product { private Product product; [br][/br] public Sugar(Product product) { this.product = product; } [br][/br] public double money() { return product.money() + 2; } } [br][/br] //加冰: class Ice implements Product { private Product product; [br][/br] public Ice(Product product) { this.product = product; } [br][/br] public double money() { return product.money() + 1.5; } } [br][/br] //加奶: class Milk implements Product { private Product product; [br][/br] public Milk(Product product) { this.product = product; } [br][/br] public double money() { return product.money() + 4.0; } } [br][/br] //加巧克力: class Chocolate implements Product { private Product product; [br][/br] public Chocolate(Product product) { this.product = product; } [br][/br] public double money() { return product.money() + 5.5; } } public class DecoratorModel{ public static void main(String [] args){ Product coffee = new Coffee(); Product sugarCoffee = new Sugar(coffee); Product sugarmilkCoffee = new Milk(sugarCoffee); System.out.println("加糖咖啡:"+sugarCoffee.money()); System.out.println("加糖加奶咖啡:"+sugarmilkCoffee.money()); } }

    内容

    • 0

      康宝兰咖啡是由意式浓缩咖啡加奶沫制作而成

    • 1

      饮咖啡时,勺子主要用于( )。 A: 喝咖啡 B: 搅拌咖啡 C: 加糖块 D: 搅拌咖啡且加糖块

    • 2

      由咖啡、牛奶、奶沫和冰块组成的咖啡,应称为() A: 冰摩卡咖啡 B: 冰拿铁咖啡 C: 冰美式咖啡

    • 3

      制作美式咖啡时,杯里一般做到杯子的8分满,为顾客加糖或加奶预留空间()

    • 4

      既不加糖也不加牛奶的纯咖啡是指( ) A: 黑咖啡 B: 原咖啡 C: 咖啡汁 D: 咖啡液