今天試了一下Decorator模式

zingers發表於2003-11-10
原來以為對Decorator很理解了,今天對一個具體類的一個功能不滿意,想加上一個動態方法,試了下發現很多問題。

//老的類
public class A
{
   protected C c
   public A(C c)
   {
      this.c=c;
   }

   public void dosome()
  {
     //do some 1
     //do some 2
  }
}


Public class B extends A
{
    private A a ;
    public B(C c)
    {
         super(c);
         a =new A(c);
     }

     public void dosome()
     {
            //do some c;
            //do some d;
     }
}
<p class="indent">


可能朋友們已經看出來了,在這種情況下,Decorator簡直是多此一舉,
和純繼承的意義相差在哪兒呢?

相關文章