zoukankan      html  css  js  c++  java
  • Java笔记之对象代理实例

    简介即ProxyPattern23java常用设计模式之一。代理模式的定义:对其他对象提供一种代理以控制对这个对象的访问,下面我们一起来看看Java对象代理的一些笔记吧。

      代码如下复制代码
      import java.lang.reflect.InvocationHandler;
      import java.lang.reflect.Method;
      import java.lang.reflect.Proxy;
      //代理需要实现的接口
      interface IVehical {
      //例如我这里写了两个接口
      void run();
      void say();
      }
      //concrete implementation
      class Car implements IVehical{
      //下面这两个方法,作为接口的实现方法,如果接口中没有这些方法,而在这里出现了多余的方法程序将编译不过。
      //每次调用这两个方法都会触发代理对象中的invoke方法。
      public void run() {
      System.out.println("Car isrunning");
      }
      public void say()
      {
      System.out.println("just one!");
      }
      }
      //proxy class
      //这个类是用来创建代理对象的,这里只是对它进行了简单的封装
      class VehicalProxy {
      private IVehical vehical;
      public VehicalProxy(IVehical vehical) {
      this.vehical = vehical;
      }
     /
      /*
      * 程序运行之后将打印如下信息,因此我们可以看出对象的代理可以往特定对象的方法中添加附带的执行学前教育代码,
      * 这个的作用在我们需要对一个做日志或者bug调试的时候非常有作用,因为我们不应该把调试代码或者是打
      * 印日志代码写在对象中,这样我们就可以将日志的代码添加到对象的代理中,从而将业务与程序的框架相
      * 关的功能分离,从而保证了代码的“纯净性”。
      * output:
      * --before running...
      * Car is running
      * --after running...
      * */
  • 相关阅读:
    JAVA NIO
    Spider、xmlSpider、FeedSpider、CrawlSpider、RedisSpider分别作用
    Scrapy中xpath用到中文报错
    xpath无法匹配tbody标签
    读书-《不凶不吼教出好孩子》-管教孩子应该先管好自己
    Markdown基本语法
    读书-《刻意练习》天才与庸才的距离
    读书-《第一次买保险就买对》保险我们这样买
    读书-《断舍离》做减法来生活
    读书-《富爸爸穷爸爸》的财商教育经
  • 原文地址:https://www.cnblogs.com/nbjk/p/3791387.html
Copyright © 2011-2022 走看看