静态代理

代理类和委托类都需要实现相同的接口

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设计模式:代理相关推荐

  1. java设计模式代理模式_Java中的代理设计模式

    java设计模式代理模式 代理对象或代理对象为另一个对象提供占位符,以控制对该对象的访问. 代理充当原始对象的轻量级版本或简化版本. 它支持与原始对象相同的操作,但可以将那些请求委托给原始对象以实现它 ...

  2. Java设计模式(代理模式-模板方法模式-命令模式)

    Java设计模式Ⅴ 1.代理模式 1.1 代理模式概述 1.2 静态代理 1.2.1 静态代理概述 1.2.2 代码理解 1.3 动态代理之JDK代理 1.3.1 动态代理之JDK代理概述 1.3.2 ...

  3. 通俗易懂说java设计模式-代理模式

    基本概念 代理模式,和我们在生活中所理解的"代理"思想并没有太大的区别.代理模式的实现需要我们设计一个代理类,在不直接访问被代理对象的前提下,通过代理类实现对被代理对象的间接访问, ...

  4. JAVA设计模式--代理模式(静态)

    目录 一.什么是代理模式 二.静态代理模式的结构 三.静态代理模式应用举例 应用一 应用二 四.代理模式的应用场景 五.静态代理模式的特点 一.什么是代理模式 代理(Proxy)模式为其他对象提供一种 ...

  5. Java设计模式-代理模式笔记

    代理模式 0 什么是代理模式 理解方式1 理解方式2 1 静态代理 1.1 代码实现 1.2 方法解读 1.3 优缺点 2 动态代理 2.1 具体实现 2.2 方法解读 2.3 注意 3 Cglib代 ...

  6. Java设计模式—代理模式

    1. 什么是代理模式? 代理模式的作用是:为其他对象提供一种代理以控制对这个对象的访问. 2. 代理模式有什么好处? 在某些情况下,一个客户不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标 ...

  7. java设计模式-代理模式初探

    根据圣思园的视频,整理的java代理模式. 代理模式的作用是:为其他对象提供一种代理以控制对这个对象的访问. 在某些情况下,一个客户不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间 ...

  8. JAVA设计模式 - 代理模式

    在对象的一个业务方法完成之后, 有时候我们可能需要去添加一些新的功能(前置校验等). 但我们又不想更改原来的代码 , 代理模式就为我们提供了一种解决方案 . 1 . 代理模式的定义 代理模式就是在不改 ...

  9. Java 设计模式 -- 代理模式

    代理模式概念 实现一个代理类以及它所对应的受代理对象,其他所有类对受代理对象的访问,都由代理对象代为实现. 优点:在目标对象基础之上,可以增加一些额外的功能. 个人认为,这种模式适用于: 你需要使用别 ...

  10. Java设计模式——代理模式

    文章目录 1.简介 2.推荐实现案例 3.优缺点 3.1 优点 3.2 缺点 4.应用场景 5.注意事项 6.拓展 6.1 普通代理 6.2 强制代理 6.3 代理类的个性 6.4 动态代理 7.最佳 ...

最新文章

  1. 03 在百度地图上定位到指定位置
  2. web压测工具http_load原理分析
  3. sql 中位数_【PL/SQL 自定义函数】 常用场景
  4. 关于F5 排错的简单介绍之一
  5. 史上最气人的数学家:文理双全智商还高,说话只说半句,解题只解半个,调戏人调戏了三百年还不够......
  6. js深入研究之Person类案例
  7. CSS Grid布局(1)
  8. react做h5 例子_使用React写一个网站的心得体会
  9. jedis操作set_你真的会使用redis的数据类型set么
  10. Android 样式
  11. [转]引用 VC 对话框设置位图背景并透明控件
  12. Spring整合ActiveMQ之嵌入(二)
  13. 双边滤波及其matlab代码
  14. 30套最实用JAVA学习视频教程合集 2012
  15. Android 仿美团GridView分页滑动(类似直播礼物列表效果)
  16. linux ext4 文件大小,刨根问底:ext3/ext4文件系统最大空间及单个文件大小演算法则...
  17. Direcshow之视频捕捉
  18. 如何预测用户query意图 « 搜索技术博客-淘宝
  19. 蚂蚁区块链第9课 SSL/TLS工作原理及在蚂蚁BAAS中的应用
  20. 【LRD,DLR】BST的后续遍历序列,二叉树中和为某一值的路径

热门文章

  1. 开源新作!疯狂java讲义第四版
  2. 宝妈怎么找副业?如何寻找副业兼职?
  3. 2018年上半年 系统分析师 下午试卷 I 案例分析
  4. 8月25号王者荣耀服务器维护,8月25号王者荣耀更新,这些福利你都知道吗?
  5. Android圆形头像轮播闪动实现
  6. android 创建平板电脑模拟器
  7. Java设计模式 -10- 装饰器模式(Decorator模式)
  8. uniapp 常用原生插件大全(2023年最新)
  9. python paramiko安装_paramiko安装及使用
  10. SQLserver存储过程加密、解密