试题六(共15分) 阅读下列说明和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 FootDecorator extends Decorator{ public FootDecorator(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 header 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! 请帮忙给出正确答案和分析,谢谢!