1. 程式人生 > >java代理模式與裝飾者模式

java代理模式與裝飾者模式

對象 tro 來看 彈性 java代理 question 設計模式 ava 設計

靜態代理和裝飾者模式的區別:

  先來看一下裝飾者模式的定義:裝飾者模式動態地將責任附加到對象上。若要擴展功能,裝飾者提供了比繼承更有彈性的替代方案。

  總結一下采用裝飾者模式是為了增強或拓展原對象的功能。

  而靜態代理除了能夠提供功能增強外(AOP增加日誌監控等,但不提供原對象本身的增強功能)還通常起到了控制訪問的作用。

  另外裝飾者模式適用於遞歸組合。

  看見百度靜態代理和裝飾者模式的區別出來前幾個博客實在是無力吐槽,連裝飾者模式其實就是動態代理模式都有人說的出來。。

相關連接:

  https://stackoverflow.com/questions/18618779/differences-between-proxy-and-decorator-pattern

  <<head first 設計模式>>

java代理模式與裝飾者模式