1 / 38
文档名称:

软件设计模式与体系结构课程作业.docx

格式:docx   大小:244KB   页数:38页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

软件设计模式与体系结构课程作业.docx

上传人:duzw466 2018/8/10 文件大小:244 KB

下载得到文件列表

软件设计模式与体系结构课程作业.docx

文档介绍

文档介绍:计算机科学与技术学院
《软件设计模式与体系结构》
课程作业(一)

目录
实验一 1
工厂方法模式——汽车保险 1
抽象工厂方法模式——房屋信息 3
实验二 6
组合模式——空军指挥系统 6
适配器模式——客户信息验证 8
实验三 11
桥接模式——几何立体体积 11
访问者模式——计算机部件销售软件 14
实验四 17
策略模式——整数排序 17
状态模式——交通信号灯 19
实验五 21
MVC软件体系结构 21
实验一
工厂方法模式——汽车保险
【实验内容】
,并且,该类要与其他的类一样能执行相应的功能。
【添加代码】
添加LuxuryCarInsurance类:
public class LuxuryCarInsurance implements AutoInsurance
{
private String description;
public String getInsuranceDescription()
{
description = " LuxuryCarInsurance: \n\nLuxuryCarInsurance coverage pays
for medical bills" +
" lost wages, rehabilitation, treatment and/or" +
" funeral costs for anyone injured or killed " +
" by your car. Such coverage will also pay for" +
" pain and suffering damages when a third " +
" party essfully sues. ";
return description;
}
}
添加LuxuryCarPolicyProducer类:
public class LuxuryCarPolicyProducer implements PolicyProducer
{
public AutoInsurance getPolicyObj() //Fruit factory()
{
return new LuxuryCarInsurance();
}
}
添加GUI:
(1)public static final String LUXURYCAR = "LuxuryCar Insurance";
(2)(LUXURYCAR);
(3)if ((LUXURYCAR)) {
pp=new LuxuryCarPolicyProducer();
}
【实验结果】

【实验小结】
使用工厂方法访问并且初始化合适的类的对象,简化了应用程序,应用程序本身不再含有大量的条件语句判定何时选取哪个类。其次,工厂方法实现了一些特殊的某个类的机制,尤其是层次结构不同的类需要不同的初始化方法的时候。
抽象工厂方法模式——房屋信息
【实验内容】
(Super)和中等(Medum)别墅(House)和公寓(Condo)的查询。要求在该设计的基础上,增加一个新的类SemiDetacher(半独立式楼宇),并且编写代码实现相应的查询功能。
【添加代码】
1、添加SemiDetacher类:
public interface SemiDetacher
{
public String getSemiDetacherInfo();
public String getSemiDetacherFeatures();
}
添加SuperSemiDetacher类:
public class SuperSemiDetacher implements SemiDetacher
{
private String name;
public SuperSemiDetacher(ame)
{
name = cName;
}
public String getSemiDetacherInfo()
{
return "";
}
public String getSemiDetacherFeatures()
{
return "Super SemiDetacher ";
}
}
3、添加Me