软件设计师案例分析当天每日一练试题地址:www.cnitpm.com/exam/ExamDayAL.aspx?t1=4
往期软件设计师每日一练试题汇总:www.cnitpm.com/class/27/e4_1.html
软件设计师案例分析每日一练试题(2024/4/28)在线测试:www.cnitpm.com/exam/ExamDayAL.aspx?t1=4&day=2024/4/28
点击查看:更多软件设计师习题与指导
软件设计师案例分析每日一练试题内容(2024/4/28)
阅读下列说明和java代码,将应填入 (n) 处的字句写在答题纸的对应栏内。
【说明】
某发票(lnvoice)由抬头(Head)部分、正文部分和脚注(Foot)部分构成。现采用装饰(Decorator)模式实现打印发票的功能,得到如图6-1所示的类图。

【java代码】 class invoice{
public void printInvoice(){
System.out.println ( "This is the content of the invoice!");
}
}
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( "This is the header of the invoice! ");
(2) ;
}
}
class FootDecorator extends Decorator {
public FootDecorator(Invoice t){
super(t);
}
public void printlnvoice(){
( 3) ;
Systent.out.println( "This is the footnote of the 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(); } }
程序的输出结果为:
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!
信管网试题答案与解析:www.cnitpm.com/exam/ExamDayAL.aspx?t1=4&day=2024/4/28
信管网考友试题答案分享:
信管网13666620477:
1 ticket.printinvoice()
4 new footdecorator();
5 new headdecorator();
信管网cnitpm629763896847:
1.ticket. printinvoice()
2.t.printinvoice ()
3.
4.new invioce()
5.new footdecorator()
信管网cnitpm475547856609:
ticket.PRINTinvoice()
t.PRINTinvoice()
t.PRINTinvoice()
信管网cnitpm616361918375:
systent.out.println( "this is the header of the invoice! ");
void printlnvoice();
systent.out.println( "this is the content of the invoice! ");
new footdecorator(t);
new headdecorator(t);
信管网心如止水:
tikit.printinvoice();
super.printinvoice();
super.printinvoice();
new decorator(t)
new decorator(t)
信管网试题答案与解析:
www.cnitpm.com/exam/ExamDayAL.aspx?t1=4&day=2024/4/28