当前位置: 首页icon 软考首页 >考试科目 >软件设计师 2020年 软件设计师2020年试题

软件设计师 2020年 软件设计师2020年试题

作者:Sister03212023-10-08 10:39:49
下载资料 2024上半年软考备考资料+考试大纲
下载按钮 下载

阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 生成器(Builder)模式的意图是将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。图6-1所示为其类图。 【Java代码】 importjava.util.*; classProduct{ privateStringpartA; privateStri

阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。

【说明】

生成器(Builder)模式的意图是将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。图6-1所示为其类图。

【Java代码】

importjava.util.*;

classProduct{

privateStringpartA;

privateStringpartB;

publicProduct(){}

publicvoidsetPartA(Strings){partA=s;}

publicvoidsetPartB(Strings){partB=s;}

}

interfaceBuilder{

public(1);

publicvoidbuildPartB();

public(2);

}

classConcreteBuilder1:implementsBuilder{

privateProductproduct;

publicConcreteBuilder1(){product=newProduct();}

publicvoidbuildPartA(){(3)("ComponentA");}

publicvoidbuildPartB(){(4)("ComponentB");}

publicProductgetResult(){returnproduct;}

}

classConcreteBuilder2implementsBuilder{

∥代码省略

}

classDirector{

privateBuilderbuilder;

publicDirector(Builderbuilder){this.builder=builder;}

publicvoidconstruct(){

(5)

∥代码省略

}

}

classTest{

publicstaticvoidmain(String[]args){

Directordirector1=newDirector(newConcreteBuilder1());

directorl.construct();

}

}

参考答案:

(1)void buildPartA()

(2)Product getResult()

(3)product.setPartA

(4)product.setPartB

(5)builder.buildPartA();或builder.buildPartB()