首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和Jrdva代码,将应填入(n)处的字句写在对应栏内。 [说明] 在销售系统中常常需要打印销售票据,有时需要在一般的票据基础上打印脚注。这样就需要动态地添加一些额外的职责。如下展示了Decorator(修饰)模式。SalesOr
阅读以下说明和Jrdva代码,将应填入(n)处的字句写在对应栏内。 [说明] 在销售系统中常常需要打印销售票据,有时需要在一般的票据基础上打印脚注。这样就需要动态地添加一些额外的职责。如下展示了Decorator(修饰)模式。SalesOr
admin
2010-12-17
70
问题
阅读以下说明和Jrdva代码,将应填入(n)处的字句写在对应栏内。
[说明]
在销售系统中常常需要打印销售票据,有时需要在一般的票据基础上打印脚注。这样就需要动态地添加一些额外的职责。如下展示了Decorator(修饰)模式。SalesOrder对象使用一个SalesTicket对象打印销售票据。图6-1显示了各个类间的关系。以下是Java语言实现,能够正确编译通过。
[图6-1]
[Java代码]
//Component.java文件
public (1) class Component {
abstract publ ic void prtTicket();
}
//salesTicket.java文件
public class SalesTicket extends Component{
public void prtTicket(){
//Sales ticket printing code here
System.out.printin("SalesTicket");
}
}
//Decorator.java文件
publ ic abstract class Decorator extends Component{
public void prtTicket(){
if(myComp!=null)myComp.prtTicket();
}
private (2) myComp;
public Decorator(Component myC){
myComp=myC;
}
}
//Footer.java文件
public class Footer extends Decorator {
public Footer(Component myC){
(3);
}
public void prtTicket(){
(4);
prtFooter();
}
publ ic void prtFooter(){
//place printing footer code here
System.out.println("Footer");
}
}
//salesorder.java文件
public class SalesOrder{
void prtTicket(){
Component myST;
myST=new Footer( (5) );
//Print Ticket with footers as needed
myST.prtTicket();
}
}
(5)
选项
答案
new SalesTicket()
解析
方法prtTicket()声明为abstract,即是抽象方法,故Component类应为抽象类,因此空(1)应填abstract。
由Decorator构造函数以及类图可知,Decorator包含一个Component对象引用,故空(2)应填Component。
函数Footer(Component *myC)是Footer类的构造函数,故空(3)处是对基类的构造,因此空(3)应填super(myC)。
Footer类的prtTicket0方法是先打印“基本”票据,再打印脚注。因此空(4)是打印“基本”票据,Footer类是Decorator的子类,故应先调用基类的打印方法,在此应填super.prtTicket()。super是对基类的引用。
参照Footer类的参照函数,空(5)应为一个Component对象指针,这里是要打印带脚注的票据,故此处应填new SalesTicket()。
转载请注明原文地址:https://kaotiyun.com/show/zqDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
采用折半查找算法有序表{7,15,18,21,27,36,42,48,51,54,60,72}中寻找值为15和38,分别需要进行______次元素之间的比较。
某系统中有一个中央数据存储,模块A负责接收新来的数据并修改中央数据存储中的数据,模块B负责访问中央数据存储中的数据,则这两个模块之间的耦合类型为________________。若将这两个模块及中央数据合并成一个模块,则该模块的内聚类型为_________
调用函数时若是引用调用方式,则是将________________。下面所定义的函数f1为值调用方式,函数f2为引用调用方式。若有表达式x=f1(5),则函数调用执行完成后,该表达式中x获得的值为________________。
某算术表达式用二叉树表示如下,该算术表达式的中缀式为________________,其后缀式为________________。
Bug记录信息包括________________。①被测软件名称②被测软件版本③测试人④错误等级⑤开发人⑥详细步骤
若一个单处理器的计算机系统中同时存在3个并发进程,则同一时刻允许占用处理器的进程数________________。
操作系统的主要任务是________________。
假设关系R1和R2如下图所示:若进行R1R2运算,则结果集分别为(1)元关系,共有(2)个元组。(2)
软件测试使用各种术语描述软件出现的问题,以下叙述正确的是______。A.软件错误(error)是指在软件生命周期内的不希望或不可接受的人为错误,其结果是导致软件故障的产生B.软件缺陷(defect)是存在于软件(文档、数据、程序)之中的那些不希望或不
以下关于数据流图的基本要素的叙述中,不正确的是_______。
随机试题
下列关于纤维蛋白溶解药的叙述,不正确的是
特殊感染性垃圾用什么垃圾袋装
某派出所以扰乱公共秩序为由扣押了高某的拖拉机。高不服,以派出所为被告提起行政诉讼。诉讼中,法院认为被告应是县公安局,要求变更被告,高不同意。法院下列做法中正确的是()。
烟光药、黑火药的Ⅰ类危险场所采用的仪表,应选择适应本场所的()。
实施性施工进度计划的编制应结合工程施工的具体条件,并以()所确定的里程碑事件的进度目标为依据。
一国征收进口附加税的目的在于()。
下列有关乳酸菌的叙述,正确的是()。
平均而言,今天受过教育的人的读书时间明显少于50年前受过教育的人的读书时间。但是,现在每年销售的书册数却比50年前增加了很多。以下除哪项外都有助于解释上述现象?
一台微型计算机要与局域网连接,必须具有的硬件是___________。
A、Theyfollowtheleadoffamouspeople.B、Theyliketotrysomethingnew.C、Theycanmakefriendsthroughpracticingyogatoget
最新回复
(
0
)