1C#模式设计习题分析.pdf
文本预览下载声明
第三章 简单工厂模式
5、使用简单工厂模式设计一个可以创建不同几何形状 (Shape),如圆形 (Circle)、矩形
(Rectangle)和三角形 (Triangle)等的绘图工具类,每个几何图形均具有回执Draw()和擦
除Erase()两个方案,要求在绘制不支持的几何图形时,抛出一个UnsupportedShapeException
异常,绘制类图并使用C#语言编程模拟实现
实例类图:
Shape
+Draw() : void
+Erase() : void
Circle Triangle Rectangle
+Draw() : void +Draw() : void +Draw() : void
+Erase() : void +Erase() : void +Erase() : void
create
create
create
UnsupportedShapeException ShapeFactory
+UnsupportedShapeException() +ShapeProduce(string type) : Shape
上图中,Shape接口充当抽象产品类,其子类Circle、Triangle、
Rectangle和UnsupportedShapeException充当具体产品类,
ShapeFactory充当工厂类。
第五章 抽象工厂模式
5、一个电器工厂可以生产多种类型的电器,如海尔工厂可以生产海尔电视机、海尔空调等,
工厂可以生产 电视机、 空调等,相同品牌的电器构成了一个产品族,而相同类
TCL TCL TCL
型的电器构成了一个产品等级结构,试使用抽象工厂模式模拟该环境。
实例类图:
ElectricalFactory
+CreateTV() : TV
+CreateAir_conditioning() : Air_conditioning
Client HaierElectricalFactory TCLElectricalFactory
+CreateTV() : TV +CreateTV() : TV
+CreateAir_conditioning() : Air_conditioning +CreateAir_conditioning() : Air_conditioning
create
显示全部