软件设计模式A卷期末考核(2)

2018-11-17 21:16

四:综合题(共15分)

假设你现在是一家快餐店的的管理者,要给顾客提供一系列的食品,如鸡翅、鸡腿等,顾客每要求一种食品,快餐店应当很快“生产”出来。请采用工厂模式来实现这个过程,用C#语言编写相应的类代码。

答: //抽象的KFC食品,Product角色 public abstract class KFCFood {

public abstract void show(); }

//下面两个类表示两种具体的KFC食品,它们继承了抽象的KFC食品Concrete Product1角色 public class Chicken: KFCFood {

public override void show() {

Console.WriteLine(“鸡腿+1”); } }

//Concrete Product2角色

public class Wings: KFCFood {

public override void show() {

Console.WriteLine(“鸡翅+1”); } }

//产品工厂,Factory角色 interface IKFCFactory {

KFCFood CreatFood(); }

//鸡翅膀工厂,ConcreteFactory角色

public class WingsFactory: IKFCFactory {

public KFCFood CreateFood()

课程名称: 软件设计模式 6

{

return new Wings(); } }

//鸡腿工厂,ConcreteFactory角色

public class ChickenFactory: IKFCFactory {

public KFCFood CreateFood() {

return new Chicken(); } }

Static void Main(String[] args) {

//定义一个鸡腿工厂

IKFCFactory factory=new ChickenFactory() //生产鸡腿

KFCFood food1=factory.CreateFood(); food1.show();

//生产鸡腿

KFCFood food2=factory.CreateFood(); food2.show();

//生产鸡腿

KFCFood food3=factory.CreateFood(); food3.show(); Console.Read(); }

课程名称: 软件设计模式 7

课程名称: 软件设计模式

8


软件设计模式A卷期末考核(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:山东省济南市2013届高三4月巩固性训练

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: