首页
登录
从业资格
生成器(Builder)模式的意图是将一个复杂对象的构建与它的表示分离,使得同样
生成器(Builder)模式的意图是将一个复杂对象的构建与它的表示分离,使得同样
题库
2022-08-02
94
问题
生成器(Builder)模式的意图是将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。图5-1所示为其类图。
【C++代码】#include<iostream>#include<string>using namespace std;class Product{private:string partA,partB;public:Product( ){}void setPartA(const string&s){PartA=s;}void setPartB(const string&s){PartB=s;}//其余代码省略};class Builder{public:(1);virtual void buildPartB( )=0;(2);};class ConcreteBuilder1:public Builder{private:Product*product;public:ConcreteBuilder1( ){product=new Product( );}void buildPartA( ){(3)("Component A");}void buildPartB( ){(4)("Component B");}Product*getResult( ){return product;}//其余代码省略};class ConcreteBuilder2:public Builder{/*代码省略*/};class Director{private:Builder*builder;public:Director(Builder*pBuilder){builder=pBuilder;}void construct( ){(5);//其余代码省略}//其余代码省略};int main( ){Director*director1=new Director(new ConcreteBuilder1( ));director1->construct( );delete director1;return 0;}
选项
答案
解析
(1)virtual void buildPartA()=0
(2)virtual Product*getResult()=0
(3)product->setPartA
(4)product->setPartB
(5)builder->buildPartA();
或builder->buildPartB();
本题考查的是面向对象程序设计,是JAVA语言与设计模式的结合考查。本题涉及的设计模式是构建器模式,将复杂类的构造过程推迟到子类实现。
对于第一空、第二空,根据实现接口的类,补充其接口缺失的方法,因此,空(1)和空(2)分别填写:virtual void buildPartA()=0和virtual Product*getResult()=0,二者可以互换;
对于第三空、第四空,是根据product类方法进行的补充,与具体产品的实现保持一致,因此,分别填写:product->setPartA,product->setPartB;
对于第五空,由于在填空后面跟随的是代码省略,因此题目并不严谨,缺失的语句可以有builder->buildPartA();builder->buildPartB()。
转载请注明原文地址:http://tihaiku.com/congyezige/2410686.html
本试题收录于:
中级 软件设计师题库软件水平考试初中高级分类
中级 软件设计师
软件水平考试初中高级
相关试题推荐
在UML提供的图中,__()__用于按时间顺序描述对象间的相互。A.网络图
数据流图DFD的作用是__()__。A.描述数据对象之间的关系 B.描述对数
()是面向对象方法中最基本的封装单元,它可以把客户要使用的方法和数据呈现给外部
数据结构中的逻辑结构是指数据对象中元素之间的相互关系。按逻辑结构可将数据结构分为
软件著作权的保护对象不包括()。A.源程序 B.目标程序 C.流程图 D
()要求关系模式的属性之间不允许有非平凡且非函数依赖的多值依赖。A.1NF
数据的逻辑独立性由()的映射实现。A.外模式到逻辑模式 B.外模式到内模式
关系模式R(U,F)中,属性集U={A,B,C,D,E},函数依赖集F=(A→B
设有关系模式:选课(学号,课程号,课程名,成绩),其函数依赖集为{课程号+课程名
某企业网上书城系统的部分关系模式如下: 书籍信息表:books(bookn
随机试题
仲裁协议包括合同中订立的仲裁条款和以其他书面方式在纠纷发生前或纠纷发生后达成的请求仲裁的协议。Arbitrationagreementsshallincl
Thisviewmaybecorrect:ithastheadvantagethatthecurrentsaredriven
Iwastohavemadeaspeechif______.A、IwasnotcalledawayB、nobodywouldhave
A.U、I为关联方向,电流I的实际方向是自B流向B B.U、I为关联方向,电流
患者,男性,32岁,平素体健。劳累着凉后发热,体温39.8℃,头痛,全身肌肉酸痛
目前,我国股票型封闭式基金托管费一般按基金资产净值的()的年费率计提。A.
个体工商户成为工业产业活动单位的条件是()。A.经工商行政管理部门核准登记
资料一 我国的水能资源丰富,能用于发电的将近5.4亿千瓦,居世界第一位。截至
交易所重组与公司化是21世纪以来证券市场全球化趋势的表现之一。( )
请根据案,回答99-100题。 下面是某求助者的SCL-90测验结果: 总
最新回复
(
0
)