Java设计模式:代理
静态代理
代理类和委托类都需要实现相同的接口
package hxw.test.StaticProxy;
public interface Service {
public void show();
}
代理类
package hxw.test.StaticProxy;
public class ServiceProxy implements Service{
//持有接口
private Service service;
//构造器要求获得接口的实现类
public ServiceProxy(Service service){
super();
this.service = service;
}
//接口方法调用
@Override
public void show() {
System.out.println("代理类 "+this.getClass().getSimpleName()+" 委托类 "+this.service.getClass().getSimpleName()+" 开始");
this.service.show();
System.out.println("代理类 "+this.getClass().getSimpleName()+" 委托类 "+this.service.getClass().getSimpleName()+" 结束");
}
}
委托类是接口的个性化实现 1
package hxw.test.StaticProxy;
public class ServiceImpl1 implements Service{
@Override
public void show() {
System.out.println("实现之1");
}
}
委托类是接口的个性化实现 2
package hxw.test.StaticProxy;
public class ServiceImpl2 implements Service{
@Override
public void show() {
System.out.println("实现之2");
}
}
测试类
package hxw.test.StaticProxy;
public class main {
public static void main(String[] args) {
Service impl1 = new ServiceImpl1();
new ServiceProxy(impl1).show();
Service impl2 = new ServiceImpl2();
new ServiceProxy(impl2).show();
}
}
测试结果
代理类 ServiceProxy 委托类 ServiceImpl1 开始
实现之1
代理类 ServiceProxy 委托类 ServiceImpl1 结束
代理类 ServiceProxy 委托类 ServiceImpl2 开始
实现之2
代理类 ServiceProxy 委托类 ServiceImpl2 结束
Java设计模式:代理相关推荐
- java设计模式代理模式_Java中的代理设计模式
java设计模式代理模式 代理对象或代理对象为另一个对象提供占位符,以控制对该对象的访问. 代理充当原始对象的轻量级版本或简化版本. 它支持与原始对象相同的操作,但可以将那些请求委托给原始对象以实现它 ...
- Java设计模式(代理模式-模板方法模式-命令模式)
Java设计模式Ⅴ 1.代理模式 1.1 代理模式概述 1.2 静态代理 1.2.1 静态代理概述 1.2.2 代码理解 1.3 动态代理之JDK代理 1.3.1 动态代理之JDK代理概述 1.3.2 ...
- 通俗易懂说java设计模式-代理模式
基本概念 代理模式,和我们在生活中所理解的"代理"思想并没有太大的区别.代理模式的实现需要我们设计一个代理类,在不直接访问被代理对象的前提下,通过代理类实现对被代理对象的间接访问, ...
- JAVA设计模式--代理模式(静态)
目录 一.什么是代理模式 二.静态代理模式的结构 三.静态代理模式应用举例 应用一 应用二 四.代理模式的应用场景 五.静态代理模式的特点 一.什么是代理模式 代理(Proxy)模式为其他对象提供一种 ...
- Java设计模式-代理模式笔记
代理模式 0 什么是代理模式 理解方式1 理解方式2 1 静态代理 1.1 代码实现 1.2 方法解读 1.3 优缺点 2 动态代理 2.1 具体实现 2.2 方法解读 2.3 注意 3 Cglib代 ...
- Java设计模式—代理模式
1. 什么是代理模式? 代理模式的作用是:为其他对象提供一种代理以控制对这个对象的访问. 2. 代理模式有什么好处? 在某些情况下,一个客户不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标 ...
- java设计模式-代理模式初探
根据圣思园的视频,整理的java代理模式. 代理模式的作用是:为其他对象提供一种代理以控制对这个对象的访问. 在某些情况下,一个客户不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间 ...
- JAVA设计模式 - 代理模式
在对象的一个业务方法完成之后, 有时候我们可能需要去添加一些新的功能(前置校验等). 但我们又不想更改原来的代码 , 代理模式就为我们提供了一种解决方案 . 1 . 代理模式的定义 代理模式就是在不改 ...
- Java 设计模式 -- 代理模式
代理模式概念 实现一个代理类以及它所对应的受代理对象,其他所有类对受代理对象的访问,都由代理对象代为实现. 优点:在目标对象基础之上,可以增加一些额外的功能. 个人认为,这种模式适用于: 你需要使用别 ...
- Java设计模式——代理模式
文章目录 1.简介 2.推荐实现案例 3.优缺点 3.1 优点 3.2 缺点 4.应用场景 5.注意事项 6.拓展 6.1 普通代理 6.2 强制代理 6.3 代理类的个性 6.4 动态代理 7.最佳 ...
最新文章
- 03 在百度地图上定位到指定位置
- web压测工具http_load原理分析
- sql 中位数_【PL/SQL 自定义函数】 常用场景
- 关于F5 排错的简单介绍之一
- 史上最气人的数学家:文理双全智商还高,说话只说半句,解题只解半个,调戏人调戏了三百年还不够......
- js深入研究之Person类案例
- CSS Grid布局(1)
- react做h5 例子_使用React写一个网站的心得体会
- jedis操作set_你真的会使用redis的数据类型set么
- Android 样式
- [转]引用 VC 对话框设置位图背景并透明控件
- Spring整合ActiveMQ之嵌入(二)
- 双边滤波及其matlab代码
- 30套最实用JAVA学习视频教程合集 2012
- Android 仿美团GridView分页滑动(类似直播礼物列表效果)
- linux ext4 文件大小,刨根问底:ext3/ext4文件系统最大空间及单个文件大小演算法则...
- Direcshow之视频捕捉
- 如何预测用户query意图 « 搜索技术博客-淘宝
- 蚂蚁区块链第9课 SSL/TLS工作原理及在蚂蚁BAAS中的应用
- 【LRD,DLR】BST的后续遍历序列,二叉树中和为某一值的路径