"); //-->
今天扣丁学堂Java培训之详细介绍首代理模式,首先ProxyPattern(即:代理模式),23种常用的面向对象软件的设计模式之一。

代理模式的定义:为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。
优点:
(1).职责清晰
真实的角色就是实现实际的业务逻辑,不用关心其他非本职责的事务,通过后期的代理完成一件完成事务,附带的结果就是编程简洁清晰。
(2).代理对象可以在客户端和目标对象之间起到中介的作用,这样起到了的作用和保护了目标对象的作用。
(3).高扩展性
结构
一个是真正的你要访问的对象(目标类),另一个是代理对象,真正对象与代理
对象实现同一个接口,先访问代理类再访问真正要访问的对象。
案例代码
举个例子,假如说你走在大街上捡到一张小卡片,上面有一个美女头像和一个电话号码,上面写着招聘保姆请拨打该电话,于是你拨打电话,电话那头不是美女小姐姐在接电话,而是一个老大妈在接电话,跟你商量招聘保姆的价格,那这个老大妈我们可以认为是美女小姐姐的代理对象,用手动代理的方式来模拟一下。一不小心开了个车,听不懂的就算啦。。。
目标类和代理类所实现的接口代码
packagecom.proxy;
?
publicinterfaceWorkInter{
?
voidworkInNight(doublemoney);
voidworkInDay(doublemoney);
?
}
目标类代码
packagecom.proxy;
publicclassXJJimplementsWorkInter{
@Override
publicvoidworkInNight(doublemoney){
System.out.println("滴滴滴~~~夜班干活啦");
}
@Override
publicvoidworkInDay(doublemoney){
//TODOAuto-generatedmethodstub
System.out.println("滴滴滴~~~干活啦");
}
}
代理类代码
packagecom.proxy;
publicclassXJJProxyimplementsWorkInter{
privateXJJxjj;
publicXJJProxy(){
xjj=newXJJ();
}
@Override
publicvoidworkInNight(doublemoney){
//TODOAuto-generatedmethodstub
}
@Override
publicvoidworkInDay(doublemoney){
System.out.println("代理收取提成"+(money/2));
xjj.workInDay(money/2);//小姐姐在干活
System.out.println("完事送回家");
}
}
?
测试类代码
classQiangGeTest{
publicstaticvoidmain(String[]args){
WorkInterxjjProxy=newXJJProxy();//创建代理类对象
xjjProxy.workInDay(200);
}
}
到这里,jdk的代理模式就分析完了,希望对爱好学习Java开发的同学有所帮助,最后想要了解更多内容的小伙伴可以登录扣丁学堂官网查看。扣丁学堂Java培训机构不仅有专业的老师和与时俱进的课程体系,还有大量的JavaEE视频教程供学员观看学习,想要了解学习Java的小伙伴快快行动吧。扣丁学堂Java技术交流群:850353792。
专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们
相关推荐
HN911模块的内部电路结构
2025年上半年中国芯片投资下降,设备投资激增
Yole评2025数据中心半导体趋势:人工智能重塑计算和内存市场
Ceva无线连接IP市场份额达68%,稳居行业首位
TWH9513内电路及引脚排列
如何使用dsPIC® DSC 实现两路电机控制?
TWH95系列内电路原理及引脚功能
2025世界机器人大会在京圆满闭幕
MPLAB® X IDE 编译调试(上)
[求助]请大家帮帮忙!
Gartner:2024年全球IaaS公有云服务市场增长22.5%
俄亥俄州的英特尔工厂已经停滞多年,现在特朗普、莫雷诺、赫斯特德都参与其中
上交15%营收换取H20出口中国大陆 专家揭骨牌效应
TMS320VC5402 DSP与ISD4004语音录放芯片的接口设计及其信息管理
陆行之揭特斯拉AI芯片转单三星背后原因
TMS320VC5402的并行引导装载方案的研究与设计
TMS320VC5402 DSP与串行AD73360 AD转换器的接口设计
MPLAB® X IDE 入门(下)
TMS320VC5402 DSP的并行IO引导装载方法研究
TMS320VC5402 DSP并行8bit EPROM引导装载方法研究
新项目寻求创业伙伴
关于tftp下载内核的问题!(tftpcmd相关)
ARM嵌入uclinux的调试概念疑问
半导体公司Altera宣布裁员
[紧急求助]
热释电红外控制自动灯
TWH9511与TWH9512的应用电路
基于PIC32的蜂窝网机器到机器(M2M)通信解决方案
MPLAB® X IDE 编辑功能
英国政府莫名其妙地告诉公民在全国干旱期间删除旧电子邮件和图片以节约用水