静态代理

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

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. asp.net中DataGrid性能测试
  2. 经验总结!我们是如何在编程面试中挂掉的
  3. Java语言概述与简单程序
  4. 第二阶段冲刺第六天(6月5号)
  5. 计算机光驱参数,请问,电脑光驱插入关盘,打开时显示“参数不正确,无法打开”,这是什么故障,怎么处理?...
  6. xshell 安装yum_xshell上安装docker
  7. Java泛型(类、接口、方法)及通配符
  8. JS - Object and Property的删除用法
  9. mysql双机数据热备份_教你怎么样实现MySQL数据库双机热备份
  10. JAVA反射--通过反射对pojo进行UT覆盖率测试
  11. Apple ID Your Account Cannot Be Created at This Time
  12. ESP8266无线模块相互通信
  13. 【Oracle】并行等待之PX Deq: Table Q Normal
  14. 支付宝玉伯:从前端到体验,如何把格局做大
  15. 基于STM32+腾讯云IO+微信小程序设计的混凝土智能养护系统
  16. Uipath的下载与使用教程
  17. Java播放MP3播放音频
  18. android系统10.0模拟器,exagear模拟器安卓10.0
  19. CANoe.DiVa 操作指南 - 逆向测试项设置
  20. [转]第一次考CCIE FAIL的经历……………

热门文章

  1. Cocos 去除默认页 web端 (有小黑块的情况)
  2. 实用新型专利申请条件及申请流程解析
  3. 【游戏教程】《星界边境》游戏2D角色分析(二)跳跃、移动动作逐帧拆分
  4. 网络系统管理赛项之debian 十七 . LDAP服务器搭建及配置方法
  5. BZOJ 4976: 宝石镶嵌 背包
  6. 活动目录服务接口ADSI(Active Directory Service Interface)
  7. 益百分与爱同行演绎健康品牌新温度
  8. 音视频测试资源和工具tool
  9. 笔记本通过手机蓝牙上网
  10. 数据库-mysql的text属性