工厂方法模式设计的汽车保险管理应用程序实例
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
作业正文
作业一:
1、作业题目内容的详细描述。
【作业2.1-1】例2.3为使用工厂方法模式设计的汽车保险管理应用程序实例,现在需要扩张例2.3的设计图,添加一个名为LuxuryCarInsurance的类,并且需要编写此类和其他需要添加的类的代码,详细要求参见光盘的响应作业部分
2、完成本题目所采用的软件设计模式名称及画出相应的类图,或者是所采用的软件体系结构名称及画出相应的体系结构图。
该题目采用的是工厂方法模式,类图如下:
3、画出完成本题目所设计程序的设计类图;如还有其他图,也一并画出。
4、完成本题目所设计的程序代码。 (1)程序主界面的部分代码如下:
(添加汽车保险名)
FactoryMethodGUI
<
BodyInjurPolicyProducer
getPolicyObj() CollisionPolicyProducer
getPolicyObj() ComprihensivePolicyProducer
getPolicyObj() LuxeryyCarPolicyProducer
getPolicyObj()
PersonInjuryPolicyProducer
getPolicyObj() <
BodyInjurLiablility getInsurDescription()
LuxeryCarInsurance getInsurDescription()
PersonInjuryProtection getInsurDescription()
ComprehensiveCoverage getInsurDescription()
CollisionCoverage getInsurDescription()
(下拉框添加LuxeryCarInsurance保险选项)
(添加触发事件判断)
(2)创建LuxeryPolicy工厂类,实现PolicyProducer接口
(3)创建LuxeryCarInsurance类,实现AutoInsurance接口
5、程序运行的典型界面截图。
作业二:
1、作业题目内容的详细描述。
【作业2.1-2】在例2.4中,设计并且实现了豪华(Super)和中等(Medium)别墅(House)与公寓(Condo)的查询。要求在该设计的基础上,增加一个新的类SemiDetacher(半独立式楼宇),并且编写代码,实现相应的查询功能,详细要求参见光盘的相应作业部分。
2、完成本题目所采用的软件设计模式名称及画出相应的类图,或者是所采用的软件体系结构名称及画出相应的体系结构图。
该题目采用的是抽象工厂模式,类图如下:
3、画出完成本题目所设计程序的设计类图;如还有其他图,也一并画出。
程序的设计类图如下:
4、完成本题目所设计的程序代码。
(1)程序主界面的部分代码如下:
界面的选择框以及按钮面板
B u i l d i n g F a c t o r y
g e t B u i l d i n g F a c t o r y(S t r i n g t y p e)
+g e t H o u s e:H o u s e
+g e t C o n d o:C o n d o
+g e t S e m i D e t a c h e r:S e m i D e t a c h e r
<>
H o u s e
+g e t H o u s e I n f o
S u p e r H o u s e
+g e t H o u s e I n f o
M e d i u m H o u s e
+g e t H o u s e I n f o
I n t e r f a c e
C o n d o
+g e t C o n d o I n f o
S u p e r C o n d o
+g e t C o n d o I n f o
M e d i u m C o n d o
+g e t C o n d o I n f o
A b s t r a c t F a c t o r y G U I
M a i n
M e d i u m B u i l d i n g F a c t o r y
+g e t H o u s e:H o u s e
+g e t C o n d o:C o n d o
+g e t S e m i D e t a c h e r:S e m i D e t a c h e r
+
S u p e r B u i l d i n g F a c t o r y
+g e t H o u s e:H o u s e
+g e t C o n d o:C o n d o
+g e t S e m i D e t a c h e r:S e m i D e t a c h e r
I n t e r f a c e
S e m i D e t a c h e r
+g e t S e m i D e t a c h e r
I n f o
S u p e r S e m i D e t a c h e r
+g e t S e m i D e t a c h e r I n f o
M e d i u m S e m i D e t a c h e r
+g e t S e m i D e t a c h e r I n f o
create
create create
create
create
create