代理模式:为其它对象提供一种代理以控制对这个对象的访问。

代码:

package xiao;

class Girl{
private String name;
public void setName(String name){
this.name = name;
}
}
interface GiveGift{
public void giveDolls();
public void giveFlowers();
public void giveChocolate();
}
class Pursuit implements GiveGift{
private Girl girl;
public Pursuit(Girl girl){
this.girl = girl;
}
public void giveDolls(){
System.out.println("give she Dolls!");
}
public void giveFlowers(){
System.out.println("give she Flowers!");
}
public void giveChocolate(){
System.out.println("give she Chocolate!");
}
}
class Proxy implements GiveGift{
private Pursuit pursuit;
public Proxy(Girl girl){
pursuit = new Pursuit(girl);
}
public void giveDolls(){
pursuit.giveDolls();
}
public void giveFlowers(){
pursuit.giveFlowers();
}
public void giveChocolate(){
pursuit.giveChocolate();
}
}
public class Hello {

public static void main(String[] args) throws Exception{
Girl girl = new Girl();
girl.setName("jiaojiao");
Proxy daili = new Proxy(girl);
daili.giveDolls();
daili.giveFlowers();
daili.giveChocolate();
}
}

这是通过男孩A想追女孩C,而男孩A不认识C,但是男孩B认识C,A通过B来给C送礼物的代码。

代理模式的用途:

第一:远程代理,为一个对象在不同的地址空间提供局部代表。这样可以隐藏一个对象存在于不同地址空间的事实。

第二:虚拟代理,根据需要创建开销很大的对象。通过它来存放实例化需要很长时间的真实对象。

第三:安全代理,用来控制真实对象访问时的权限。

第四:智能指引,是指当调用真实的对象时,代理处理另外一些事。

转载于:https://www.cnblogs.com/tuifeideyouran/p/3733543.html

Chapter 7 代理模式相关推荐

  1. GOF23设计模式(结构型模式)代理模式~

    代理模式应用场景十分广泛,随便一个框架都会用到,因此学好代理模式对后续框架学习是最基本的要素!!今天我们就来讲讲代理模式! 目录 1.简介 1. 核心作用 2. 角色分析 2. 应用场景 4. 分类 ...

  2. Java 设计模式_代理模式(2016-08-19)

    概念: 代理模式是对象的结构模式.代理模式给某一个对象提供一个代理对象,并由代理对象控制对原对象的引用. 就是一个人或者机构代表另一个人或者机构采取行动.在一些情况下,一个客户不想或者不能够直接引用一 ...

  3. ATS 5.3.0在反向代理模式下实现正向代理功能方法

    以前,我在records.config中一般是配置成正向+反向的形式: 现在我打算改为反向代理模式,但是需要实现正向代理的功能: 同时在remap.config中配置 regex_map http:/ ...

  4. 设计模式 之美 -- 代理模式

    文章目录 1. 解决问题 2. 应用场景 1. 业务系统的非功能性开发 2. 代理模式在RPC.缓存中的应用 3. 实现 C++实现 C语言实现 1. 解决问题 客户端和目标对象之间需要进行交互,此时 ...

  5. 设计模式之代理模式(Proxy Pattern)

    定义:为其他对象提供一种代理以控制这个对象的访问,也叫做委托模式. 咱们比作游戏,通俗讲代理模式就是,一个主题虚基类派生出两个子类,一个玩家类,实现相关操作,一个是代练类,代替执行玩家相关操作,代练类 ...

  6. 设计模式之“代理模式”

    代理(Proxy)模式给某一个对象提供一个代理,并由代理对象控制对原对象的引用. 代理模式的英文叫做Proxy或Surrogate,中文都可译成"代理".所谓代理,就是一个人或者一 ...

  7. 设计模式之代理模式(Proxy)摘录

    23种GOF设计模式一般分为三大类:创建型模式.结构型模式.行为模式. 创建型模式抽象了实例化过程,它们帮助一个系统独立于如何创建.组合和表示它的那些对象.一个类创建型模式使用继承改变被实例化的类,而 ...

  8. snmpd 子代理模式编译测试

    1.参考链接 1)Net-snmp添加子代理示例 https://blog.csdn.net/eyf0917/article/details/39546651 2.操作步骤 1)网络拷贝下面的文件 h ...

  9. 大话设计模式读书笔记--4.代理模式

    生活中的例子: 班主任让班长通知班委下午3点开会 班长就是班主任的代理 代理模式的目的是: 隐藏真实访问对象,同时可以处理别的事情 定义 代理模式:为其他对象提供一种代理以控制对这个对象的访问 也就是 ...

最新文章

  1. 2 行代码,将 .NET 执行时间降低 87%!
  2. 源码 反码 补码详解(为什么计算机存储数值为补码形式?)
  3. wxWidgets:wxSplashScreen 示例
  4. apache camel_轻量级的开源集成:Apache Camel还是Spring集成?
  5. php 父类中获取子类的名称,php – 在父类中获取子类的名称(静态上下文)
  6. [KMP]一本通(http://ybt.ssoier.cn:8088) 1698:字符串匹配
  7. CSS 动态超链接样式 LVFHA 或 LVHFA
  8. 如何选择行业,让选择大于努力
  9. 掌握STC单片机程序烧录方法只需要三步走
  10. 分类问题中的几个衡量指标
  11. Java-Preferences用法-入门
  12. S7-1200中时钟功能设定和读写调用的具体方法
  13. 调用新浪接口查询IP地址
  14. 深度学习-胶囊网络学习
  15. uniapp自定义开屏启动广告页
  16. 《Hud 2589》Phalanx详解
  17. DellR240服务器U盘引导,【dell uefi u盘引导】dellr730配置uefi引导_dell uefi启动
  18. C语言中表示输出类型的格式字符
  19. 小白也能读懂的 ZigBee 3.0 简介
  20. Cocos2d-x 3.x中解决无法打开文件:“extensions/ExtensionMacros.h”

热门文章

  1. 华为路由器时间同步_4G网络变WIFI,华为4G路由2 Pro让上网变得更简单
  2. QT 实现采集即时音频信号并发送至另一台电脑播放
  3. LuaForUnity4:Lua的函数
  4. 物理层数据通信理论基础
  5. bzoj 1121: [POI2008]激光发射器SZK
  6. 图像识别讲解 以一个简单的图像识别任务为例
  7. matlab2c使用c++实现matlab函数系列教程-conv函数
  8. 从应用上看计算机将向那个方向发展,(2)2019年6月一级Ms Office试题
  9. 使用ConnectivityManager 判断网络是否连接
  10. C语言程序设计I—第五周教学