阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某快餐厅主要制作并出售儿童套餐,一般包括主餐(各类比萨)、饮料和玩具,其餐品种类可能不同,

admin2018-09-03  8

问题 阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
某快餐厅主要制作并出售儿童套餐,一般包括主餐(各类比萨)、饮料和玩具,其餐品种类可能不同,但其制作过程相同。前台服务员(Waiter)调度厨师制作套餐。现采用生成器(Builder)模式实现制作过程,得到如图6—1所示的类图。

【Java代码】
class Pizza{
private String parts;
public void setParts(String parts){this.parts=parts,}
public String toString(){return thiS.parts;}
}
abstract class PizzaBuiider{
protected Pizza pizza,
public Pizza getPizza(){return piZza;}
public void createNewPizza(){pizza=new Pizza();}
public(1);
}
class HawaiianPizzaBuilder extends PizzaBuilder{
public void buildParts(){pizza.setParts("cross+miid+ham&pineapple"};
}
}
class SpicyPizzaBuiider extends PizzaBuilder{
public void buildParts(){pizza.setParts("pan baked+hot+pepperoni&salami");}
}
class Waiter{
private PizzaBuilder pizzaBuilder;
public void setPizzaBuilder(PizzaBuilder pizzaBuilder){/*设置构建器*/
(2);
}
public Pizza getPizza(){return pizzaBuiider.getPiZza();}
public void construct(){/*构建*/
PizzaBuilder.createNewPizza();
(3);
}
}
Class FastFoodOrdering(
public static viod mainSting[]args){
Waiter waiter=new Waiter(),
PizzaBuilder hawaiian_pizzabuilder=new HawaiianPizzaBuilder();
(4);
(5);
System.out.println("pizza:"+waiter.getPizza());
}
}
程序的输出结果为:
Pizzacross+mild+ham&pineapple

选项

答案(1)virtual void buildParts() (2)this->pizzaBuilder=pizzaBuilder (3)pizzaBuilder->buildParts() (4)waiter->setPizzaBuilder(hawaiian pizzabuilder) (5)waiter->construct()

解析
转载请注明原文地址:https://www.kaotiyun.com/show/SzxZ777K
0

相关试题推荐
最新回复(0)