1. 代理模式

2018-09-15  本文已影响0人  FlyTian_43ab

参考:https://www.cnblogs.com/baizhanshi/p/6611164.html

1.  代理模式目的?

     为客户端,屏蔽  接口的实现类,提供一个代理类来实现 对接口实现类的 访问。

2. 代理类分为哪两种?

    静态代理:开发者创建代理类,编译时,代理类的.class文件已经生成。

    动态代理: 程序运行时,运用反射机制  动态创建而成。

3. 什么是代理类, 什么是委托类?

    静态代理:

        接口的实现类,就是委托类;实现且关联 接口的类, 就是静态代理类

 4. 代理类 为 委托类 做什么?

     代理类 为 委托类  进行消息预处理, 进行消息后续处理,然后转发消息。

    预处理和后续处理之间,是 委托类 处理消息。       

5.静态代理 的 优点? 缺点?

优点: 使客户端 不需要 知道实现类是什么,只需要知道 代理类即可。对于 构造函数的参数部分, 可以用工厂模式解决。

缺点:

1. 如果接口增加一个方法, 所有代理类 也需要实现此方法,增加代码维护复杂度。

2. 静态代理值为 一个接口 提供代理,如果还要 为其他接口 提供代理, 需要 再次定义代理类。

6. 动态代理的优点?

    动态代理 类 可以完成 全部的代理功能, 不必为每一个 接口 开发代理类。

        动态代理 只需要 一个 invoke接口 就能 实现 对 所有接口中方法的 代理。

上一篇 下一篇

猜你喜欢

热点阅读