androidaop切面編程三種實現方式?
AOP有三種植入切面的方法:其一是編譯期織入,這要求使用特殊的Java編譯器,AspectJ是其中的代表者;其二是類裝載期織入,而這要求使用特殊的類裝載器,AspectJ和AspectWerkz是其中的代表者;其三為動態代理織入,在運行期為目標類添加增強生成子類的方式,Spring AOP采用動態代理織入切面。 Spring AOP使用了兩種代理機制,一種是基于JDK的動態代理,另一種是基于CGLib的動態代理,之所以需要兩種代理機制,很大程度上是因為JDK本身只提供基于接口的代理,不支持類的代理。