1. 程式人生 > >動態代理模式(例項化詳解)

動態代理模式(例項化詳解)

簡介

代理模式通常用於達到對原有系統功能進行擴充的目的

比如:你剛接手一個別人沒有完成的專案,這是你不想動別人原理的程式碼,還需要新增新功能。這時代理模式,這時代理模式,這時代理模式會很好的幫助解決問題

代理模式分為兩種: 靜態代理模式 、 動態代理模式

靜態代理

靜態代理一般是由一個介面,若干個實現類、若干個代理類構成

靜態代理模式,代理類聚合了被代理的類,且代理類及被代理類都實現了同一個介面,可實現靈活多

缺點就是如果在追加兩個功能,那麼還需要建立兩個代理類,這樣就會導致代理類越來越多,管理越來越困難。這是動態代理就運用而生了

學習動態代理,不可避免的要用到下面一個介面和一類

  1. InvocationHandler介面
  2. Proxy類

動態代理與靜態代理相比較,最大的好處是介面中宣告的所有方法都被轉移到呼叫處理器一個集中的方法中處理,在介面方法數量比較多的時候,我們可以進行靈活處理,而不需要像靜態代理那樣對每一個方法或方法組合處理處理。

轉載原處:https://blog.csdn.net/qq_38704184/article/details/84110496