java动态代理详解
来源:互联网 发布:nginx限制ip访问 编辑:程序博客网 时间:2024/05/31 15:19
java代理可分为动态代理和静态代理。
代理模式的作用:为其他的对象提供一种代理以访问真实的对象,作用类似于“中介”
静态代理:包含三个角色
1.抽象角色:真实的对象与代理对象共同实现的接口或抽象类
2.代理角色:内部包含了对真实对象的引用,其实现的方法内部实际上调用的是真实的角色的对象,是对真实角色的一种封装。
3.真实角色:最终操作的那个对象。
抽象角色
package com.qidian.proxy;//抽象的角色,也可定义成抽象类public interface AbsInteface{public void rent();//租房子}真实角色
package com.qidian.proxy;//真实的角色实现了共同的抽象接口public class RealRole implements AbsInteface{@Overridepublic void rent(){System.out.println("房东租房子!!!");}}
代理角色
package com.qidian.proxy;//代理类也实现了共同的契约public class ProxyRole implements AbsInteface{RealRole real;//真实类的引用@Overridepublic void rent(){ //实际上操作的还是真实类//真实类是一个“枪手”RealRole realRole = (real == null ? new RealRole() : real);realRole.rent();}}测试的环境
package com.qidian.proxy;public class ProxyTest{public static void main(String[] args){AbsInteface abs = new ProxyRole();abs.rent();// 房东租房子!!!}}
动态代理
java动态代理类位于java.lang.reflect包下面主要涉及两个类:Interface InvocaionHandler 接口和Proxy类
未完待续……
- Java动态代理详解
- java动态代理详解
- Java动态代理详解
- java动态代理详解
- 详解java动态代理
- java 动态代理详解
- Java动态代理详解
- java动态代理详解
- JAVA动态代理详解
- Java动态代理详解
- Java动态代理详解
- java动态代理详解
- Java动态代理详解
- java动态代理详解
- Java动态代理详解
- Java动态代理详解
- Java动态代理详解
- java动态代理详解
- Linux 自动删除N天前的文件
- Struts2中关于值跳转input,而不执行action的问题
- C++中内存泄露问题
- hdu 3509
- ubuntu 32位系统下配置android开发环境
- java动态代理详解
- alter system switch logfile和alter system archive log current 的区别
- Unity 官方免费眩光效果包 哈哈哈哈。。。。。。
- android源码下载编译
- SIFT算法學習小記
- 浅谈C/C++内存泄露及其检测工具
- Oracle sqlplus 常用命令总结
- 指针和引用
- Oracle 11g 新特性简介