zoukankan      html  css  js  c++  java
  • ________________Java代理

    我是自己理解的,可能会有好多问题。

    一  、

    //创建一个需要实现display功能的 接口
    package com.chinasoft.proxy;
    public interface 功能接口 {
    void display();
    }

    二、

    //实现类实现display的方法
    package com.chinasoft.proxy;
    public class 实现功能 implements 功能接口 {
    @Override
    public void display() {
    // TODO Auto-generated method stub
    System.out.println("啦啦啦___这就是爱___啦啦啦");
    }
    }

    三、

    //代理功能 
    package com.chinasoft.proxy;
    import java.lang.reflect.InvocationHandler;
    import java.lang.reflect.Method;
    import java.lang.reflect.Proxy;
    import java.util.logging.LogManager;

    public class 代理功能 implements InvocationHandler {
    private Object target;

    public 代理功能(Object target) {
    super();
    this.target = target;
    }

    public Object getproxy(Class<?> c) {
    return Proxy.newProxyInstance(c.getClassLoader(), target.getClass().getInterfaces(), this);

    }

    @Override
    public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
    // TODO Auto-generated method stub

    System.out.println("------------------before------------------");
    Object result=method.invoke(target, args);
    System.out.println("-------------------after------------------");

    return result;
    }

    }

    四、

    //测试
    package com.chinasoft.proxy;

    public class TestIV {

    public static void main(String[] args) {
    // TODO Auto-generated method stub
    实现功能 i = new 实现功能();//创建功能的实例
    代理功能 iv = new 代理功能(i);// 实例化InvocationHandler
    功能接口 proxy = (功能接口) iv.getproxy(功能接口.class);//实例化代理
    proxy.display();
    }

    }

     

    五、//测试结果

    ------------------before------------------
    啦啦啦___这就是爱___啦啦啦
    -------------------after------------------

     

  • 相关阅读:
    BFS(双向) HDOJ 3085 Nightmare Ⅱ
    BFS+Hash(储存,判重) HDOJ 1067 Gap
    BFS(判断状态) HDOJ 3533 Escape
    三进制状压 HDOJ 3001 Travelling
    BFS(八数码) POJ 1077 || HDOJ 1043 Eight
    Codeforces Round #332 (Div. 2)
    BFS HDOJ 2102 A计划
    if语句
    shell脚本编程测试类型下
    shell脚本编程测试类型上
  • 原文地址:https://www.cnblogs.com/qiqisx/p/7773792.html
Copyright © 2011-2022 走看看