插件化开发(一)代理模式

前言

      插件化开发所涉及到的技术点非常多,比如程序的启动流程、四大组件启动流程、ClassLoader原理、上下文Context、AMS原理、反射、代理等。本篇主要简单介绍代理模式,为后面介绍插件化实现做知识铺垫。

 1 //
 2 public interface IShop {
 3     void buy();
 4 }
 5 
 6 //
 7 public class Boss implements IShop {
 8     @Override
 9     public void buy() {
10         System.out.println("I am boss,I buy buy buy");
11     }
12 }
13 
14 //
15 public class Assistant implements IShop {
16     private IShop mBoss;
17     Assistant(IShop shoper) {
18         mBoss = shoper;
19     }
20 
21     @Override
22     public void buy() {
23         mBoss.buy();
24     }
25 }
26 
27 //
28 public class ProxyDemo {
29     public static void main(String[] args) {
30         IShop boss = new Boss();
31         IShop assitant = new Assistant(boss);
32         assitant.buy();
33     }
34 }

动态代理

猜你喜欢

转载自www.cnblogs.com/andy-songwei/p/13377922.html
今日推荐