2016年下半年计算机软件答案,2016年下半年软件设计师真题+答案解析(上午选择+下午案例完整版)全国计算机软考...

第 6 题

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

某发票(lnvoice)由抬头(Head)部分、正文部分和脚注(Foot)部分构成。现采用装饰(Decorator)模式实现打印发票的功能,得到如图6-1所示的类图。

问题:6.1 【java代码】 class invoice{

public void printInvoice(){

System.out.println ( \} }

class Decorator extends Invoice { protected Invoice ticket; public Decorator(lnvoice t){ ticket = t; }

public void printInvoice(){ if(ticket != null) (1) ;

} }

class HeadDecorator extends Decorator{ public HeadDecorator(lnvoice t){ super(t); }

public void printInvoice (){

Systent.out.println( \(2) ; } }

class FootDecorator extends Decorator { public FootDecorator(Invoice t){ super(t); }

public void printlnvoice(){ ( 3) ;

Systent.out.println( \} }

Class test {

public static void main(String[] args){ Invoice t =new Invioce(); Invoice ticket; ticket= (4) ; ticket.printInvoice();

Systent.out.println(“------------------“); ticket= (5) ; ticket.printInvoice(); } }

程序的输出结果为:

This is the header of the invoice! This is the content of the invoice! This is the footnote of the invoice! ----------------------------

This is the header of the invoice! This is the footnote of the invoice!

答案解析:

(1)ticket.printInvoice() (2)super.printInvoice() (3)super.printInvoice()

(4)new HeadDecorator(new FootDecorator(t)) (5)new HeadDecorator(new FootDecorator(NULL))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值