你将你的代码贴出来看看。 你这个是属于功能性增强。可以采用装饰模式来做,就是说,你另外写一个类B,这个B和A具有相同的接口假设你的A接口是I,这个接口有一个print的打印方法。那么B应该是这样的: public B implements I{ private I a; public B(I a){ this.a=a; }
public void print(){ a.print();//这里打印正文 .....//这里添加打印附加内容的方法 } }这样调用。 I a=new A(); I b=new B(a); b.print();这里就将附件内容打印出来了。这里的B就是增加打印附件的功能。如果你不用打印附件,直接用a.print()就可以了,所以这些都是动态的。呵呵。
你这个是属于功能性增强。可以采用装饰模式来做,就是说,你另外写一个类B,这个B和A具有相同的接口假设你的A接口是I,这个接口有一个print的打印方法。那么B应该是这样的:
public B implements I{
private I a;
public B(I a){
this.a=a;
}
public void print(){
a.print();//这里打印正文
.....//这里添加打印附加内容的方法
}
}这样调用。
I a=new A();
I b=new B(a);
b.print();这里就将附件内容打印出来了。这里的B就是增加打印附件的功能。如果你不用打印附件,直接用a.print()就可以了,所以这些都是动态的。呵呵。
方法2:Decorator模式