zoukankan      html  css  js  c++  java
  • 代理模式

    AOP(面向切面编程)

      它是面向对象的一种补充增强,它在这基础之上增加了一些而外的功能增强。

     它可以在原有的行为不改变的前提,在这之前或者之后完成一些而外的事情

    而AOP用的的思想和模式就是代理模式。

    代理模式分为两种:

    1)静态代理

    编静态代理的代理对象是开发人员自行编写好的,并且在编译期就已经确定。

    缺点:

    1.需要为每一个目标对象编写相应的代理实例,从而代理不同的业务逻辑。

    2.当接口发生变动时,所有的代理类的实现类都必须修改。

    2)动态代理

       使用动态代理,代理实例是不需要开发人员去编写,而是有相应的处理程序在运行时动态产生一个字节码,这个字节码就是代理对象,并加载到JVM中执行。由于代理实例是在运行时才会动态产生,因此就叫做动态代理。它和静态代理的区别就在于,静态代理的代理实例是人为编写的,并且实在便宜期就已经确定的。

    在Jav语言层面实现动态代理的机制有很多,例如:

    JDK动态代理(官方)

    1. Proxy类,用于动态产生代理对象
    2. InvocationHandler接口,回调处理器,负责调用目标对象的行为,并实现功能增强。

    JDK动态代理有一个特点,

    CGLIB动态代理(第三方开源)

      

  • 相关阅读:
    CompositeConfiguration的用法
    Intellij IDEA连接Git@OSC
    Spring4.1.6 标签注解大全以及解释
    React制作吸顶功能总结
    总结常见的ES6新语法特性。
    12个常规前端面试题及小结
    JavaScript 扩展运算符
    Promise,Generator(生成器),async(异步)函数
    Vue中过度动画效果应用
    vue的双向绑定原理及实现
  • 原文地址:https://www.cnblogs.com/BruningHUA/p/6221454.html
Copyright © 2011-2022 走看看