设计模式之GOF23代理模式03
动态代理
Star realStar;
public StarHandler(Star realStar) {
this.realStar = realStar;
}
public Object invoke(Object proxy, Method method, Object[] args)
throws Throwable {
Object obj=null;
System.out.println("面谈");
System.out.println("签合同");
//核心代码
if(method.getName().equals("sing"))
{
obj=method.invoke(realStar, args);
}
System.out.println("收尾款");
return obj;
}
/**
* 面谈
*/
void confer();
/**
* 签合同
*/
void signContract();
/**
* 唱歌
*/
void sing();
/**
* 收尾款
*/
void coleectMoney();
}
private String name;
public RealStar(String name) {
this.name = name;
}
@Override
public void sing() {
System.out.println(this.name +"唱歌");
}
public String getName() {
return name;
}
this.name = name;
}
@Override
public void confer() {
System.out.println("RealStar.confer()");
}
@Override
public void signContract() {
System.out.println("RealStar.signContract()");
}
@Override
public void coleectMoney() {
System.out.println("RealStar.coleectMoney()");
}
public static void main(String[] args) {
Star realStar =new RealStar("Jay");
StarHandler handler=new StarHandler(realStar);
Star proxy=(Star) Proxy.newProxyInstance(ClassLoader.getSystemClassLoader(), new Class[] {Star.class},handler );
proxy.sing();
}
}
设计模式之GOF23代理模式03相关推荐
- 设计模式学习之代理模式学习(一)
设计模式学习之代理模式学习(一) 关于设计模式想必学习过Java语言的人都知道吧,当时对其进行深入学习的的人应该不是很多.在我看来设计方面的知识相比于框架应用配置等知识要有意思的多,并且设计模式的对一 ...
- 设计模式之静态代理模式实战
转载自 设计模式之静态代理模式实战 静态代理模式很简单,代理类和实现类都实现相同的接口,然后通过代理类来调用实现类的方法. 如我们想保存用户信息之前打印用户信息,或者保存用户信息之后把这些信息缓存下来 ...
- 设计模式之蝉——代理模式上中
代理模式的扩展 1 普通代理 :这种代理就是客户端只能访问代理角色,而不能访问真实角色.与设计模式之蝉--代理模式上 片基本差不多. (1)Subject抽象主题角色: (2)RealSubject具 ...
- 每日一个设计模式之【代理模式】
文章目录 每日一个设计模式之[代理模式] ☁️前言
- 设计模式之禅-代理模式
目录 代理模式 例子 定义 优点 使用场景 扩展 普通代理 强制代理 代理的个性-增强 动态代理 代理模式 例子 public interface IGamePlayer {/*** 登录游戏*/vo ...
- 大话设计模式C++版——代理模式
本篇開始前先发个福利,程杰的<大话设计模式>一书高清电子版(带文件夹)已上传至CSDN,免积分下载. 下载地址:http://download.csdn.net/detail/gu ...
- Java24种设计模式(第二种)--代理模式(Proxy Pattern)
Java24种设计模式 (第二种) 一.代理模式(Proxy Pattern) 模式逻辑: 什么是代理模式呢?我很忙,忙的没空理你,那你要找我呢就先找我的代理人吧,那代理人总要知道 被代理人能做哪些事 ...
- 23种java设计模式详解-代理模式
什么是代理模式: Proxy模式又叫做代理模式,是构造型的设计模式之一,它可以为其他对象提供一种代理(Proxy)以控制对这个对象的访问.所谓代理,是指具有与代理元(被代理的对象)具有相同的接口的类, ...
- 设计模式:4.代理模式
代理模式 代理模式属于结构型模式 定义:为其他对象提供一种代理以控制对这个对象的访问 代理模式就是在操作原对象的时候,多出来一个代理类,用来对原对象的访问进行控制和替代原对象进行一些操作 模式类图 角 ...
- 《设计模式系列》- 代理模式
有情怀,有干货,微信搜索[三太子敖丙]关注这个有一点点东西的程序员. 本文 GitHub https://github.com/JavaFamily 已收录,有一线大厂面试完整考点.资料以及我的系列文 ...
最新文章
- shiro 没有注销再登录_Shiro 详细介绍 068
- python判断远程文件是否存在
- 课后作业:情境二:数据类型与运算符 3、运算符及表达式
- hibernate示例_通过示例Hibernate–第1部分(删除孤儿)
- Visual C++中MFC消息的分类
- 前端工程化(ES6模块化和webpack打包)
- 《MYSQL必知必会》— 14~17.子查询、联结、高级联结、组合查询
- P2P端口映射 UPnP功能和使用详解
- python3 模拟键盘_python3 模拟鼠标和键盘操作
- pdf拆分成多个文件,方法步骤
- 忠和资本:2021年后市刘国忠行情预测
- 【TLD】改进后的TLD视频目标跟踪方法的MATLAB仿真
- img显示服务器本地图片,img显示服务器图片不显示
- 手机上可以拍蓝底证件照吗
- 3dsMax---期末设计[CC‘s 游乐园’]
- Docker的降维打击是怎么利用天时地利人和的?看这一篇就够了
- 以太网络(网口)变压器简介,功能,结构及典型的以太网网口电路
- Java图书管理系统简化版期末考核作业
- VMware虚拟机如何设置从U盘启动
- Java高级:java文档生成器命令
热门文章
- Php调用工行支付接口时的问题解决
- 怎样当一个企业舍不得的人
- java hashtable 修改_Java Hashtable computeIfAbsent()用法及代码示例
- 现浇板用弹性计算方法_现浇板裂缝处理办法全总结!
- 拓端tecdat|R语言估计获胜概率:模拟分析学生多项选择考试通过概率可视化
- 拓端tecdat|视频:R语言中的时间序列分析模型:ARIMA-ARCH / GARCH模型分析股票价格
- 拓端tecdat|决策树算法建立电信客户流失模型
- linux opendir php,php目录遍历函数opendir用法实例
- SMOTE(Synthetic Minority Over-Sampling Technique ,即“人工少数类过采样法“)----Python调包简单实现
- 医学图像分割--U-Net: Convolutional Networks for Biomedical Image Segmentation