Java代理模式和裝飾者模式的區別?
代理模式與裝飾者模式看起來很像,都實現基礎對象實現的接口,在其自身對象中都保存著對被代理/被裝飾者的對象引用。 先來看看裝飾者模式的定義:動態的將責任附加到被裝飾者對象上,用于擴展對象的功能。比繼承的靈活性大。典型的如Java IO的設計即是裝飾者模式的典型應用。 代理模式模式的定義:對其他對象進行代理,以控制對被代理對象的訪問。Spring的為業務邏輯層方法生成的代理類,主要進行一些事務控制等。 由定義可以看出裝飾的責任是擴展功能 ,而代理主要控制訪問。 具體例子可參看Java IO裝飾/Spring的動態代理/Hibernate的代理等。
上一篇dir出不來怎么回事
下一篇css不同級的樣式怎么用