【ThinkingInJava】33、动态代理机制
来源:互联网 发布:外设与cpu数据交换方式 编辑:程序博客网 时间:2024/06/05 22:50
/*** 书本:《Thinking In Java》* 功能:动态代理机制* 文件:SimpleProxyDemo.java* 时间:2015年4月15日21:41:39* 作者:cutter_point*/package Lesson14TypeInformation;import static net.mindview.util.Print.*;interface Interface{//一个接口提供两个方法void doSomething();void somethingElse(String arg);}class RealObject implements Interface{//实现接口@Overridepublic void doSomething() {print("doSomething");}@Overridepublic void somethingElse(String arg) {print("somthingElse " + arg);}}class SimpleProxy implements Interface{//实现两个接口之后,在加上了一个变量private Interface proxied;public SimpleProxy(Interface proxied){this.proxied = proxied;}public void doSomething() { print("SimpleProxy doSomething");//先实现自己的功能,然后调用传进来的这个接口的功能 proxied.doSomething();} public void somethingElse(String arg) { print("SimpleProxy somethingElse " + arg); proxied.somethingElse(arg); }}public class SimpleProxyDemo {public static void consumer(Interface iface) { iface.doSomething(); iface.somethingElse("bonobo");}public static void main(String[] args) {consumer(new RealObject());consumer(new SimpleProxy(new RealObject()));//动态代理}}
我就这么说了,可能是我的理解还不够深,我觉得动态代理就是类的组合的使用,用一个类里面使用了另外一个类作为私有变量,实现各种功能,同时还可以执行代理的那个类的各种功能,可以各种拦截,可以判定到底要不要执行这个成员类的方法,或者是执行那个
输出:
doSomething obj1
somthingElse bonobo obj1
SimpleProxy doSomething obj1
doSomething obj1
SimpleProxy somethingElse bonobo obj1
somthingElse bonobo obj1
0 0
- 【ThinkingInJava】33、动态代理机制
- 【ThinkingInJava】34、java的动态代理(2)
- 【ThinkingInJava】43、与动态代理混合的装饰器模式
- JAVA动态代理机制
- java动态代理机制
- JAVA动态代理机制
- java动态代理机制
- 动态代理机制
- JDK动态代理机制
- 反射机制动态代理
- JDK动态代理机制
- JDK动态代理机制
- java动态代理机制
- 动态代理机制
- Java 动态代理机制
- 动态代理实现机制
- 动态代理机制
- java动态代理机制
- 人脸识别国内外现状及发展
- 易语言个人见解
- springMVC框架下JQuery传递并解析Json数据
- unix环境高级编程编译方法 -apue最简单编译方法(第二版)
- 苹果开发 笔记(24)
- 【ThinkingInJava】33、动态代理机制
- 指针
- javascript事件监听,事件冒泡/捕获总结
- 机器学习实战——第一章:机器学习基础
- java+jsp+servlet实现分页
- 第10周-不借助中间变量交换求三个数的最值
- 动态代理
- springmvc的@RequestMapping、@PathVariable、@RequestParam
- 获取页面图片路径