好文档 - 专业文书写作范文服务资料分享网站

2016下半年软件设计师考试真题及答案-下午卷

天下 分享 时间: 加入收藏 我要投稿 点赞

return 0; }

程序的输出结果为:

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) virtual void printInvoice() (2) ticket->printInvoice() (3) Decorator::printInvoice() (4) Decorator::printInvoice() (5) &a

试题六(共15分)

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

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

16

【java代码】 class invoice{

public void printInvoice(){:

System.out.println ( \is the content of invoice!\ } }

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

public void printinvoice(){ if(ticket != NULL) (1); } }

class FootDecorator extends Decorator{

17

the public FootDecorator(lnvoice t){ super(t); }

public void printinvoice (){

Systent.out.println( \is the header of the invoice! \ (2) ; } }

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

public void printlnvoice(){ (3) ;

Systent.out.println( invoice! \ } }

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(); }

18

{ \is the header of the}

程序的输出结果为:

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) ticket.printInvoice() (3) ticket.printInvoice()

(4) new FootDecorator(new HeadDecorator(t))

(5) new FootDecorator(new HeadDecorator(new 19

Decorator(null)))

3dbhz31hyc7zlrl1bkfq6d7jn4l91z0136o
领取福利

微信扫码领取福利

微信扫码分享