zoukankan      html  css  js  c++  java
  • 每日一记--代理模式

      最近一直感觉到没有学到什么东西,惶惶恐恐的感觉,夜夜难以入眠。不知道该学什么,从哪里出发;因此我决定每天写一篇学习笔记,记录每天学到了什么,无论是什么东西都将其记下来!希望能够坚持。

      今天首先学的关于Java的设计模式之代理模式。代理模式分为两种:静态代理和动态代理。

    1、静态代理

      对于静态代理,由我个人学习理解认为分为两种:继承和实现同一接口。

      ①继承:指的是对被代理对象的继承,通过对其相应的方法的覆盖。然后可以添加相应的业务逻辑。

      ②实现同一接口:指的是通过实现同一接口,聚合被代理对象,同样通过对其相应的方法进行覆盖,再添加相应的业务逻辑。

    2、动态代理

      对于动态代理可以使用JDK1.6以上具有的compiler或者使用cglib产生二进制文件实现动态代理。

      而关于使用Java1.6特性的compiler可以通过创建方法newProxyInstance,传入class和InvocationHander两个参数。首先利用Methods数组对class方法的遍历,利用字符串动态的产生相应的方法代码,并写入相应.java文件中。然后通过JavaCompiler对其进行编译产生代理对象。

  • 相关阅读:
    日志
    JAVA字符串类
    JAVA包
    JAVA面向对象
    JAVA数组
    JAVA循环结构
    JAVA程序调试
    JAVA条件判断
    JAVA算术运算符
    JAVA数据类型
  • 原文地址:https://www.cnblogs.com/ZNwithLC/p/9458104.html
Copyright © 2011-2022 走看看