Java的代理模式示例分析
发表于:2024-11-12 作者:千家信息网编辑
千家信息网最后更新 2024年11月12日,这篇文章主要讲解了"Java的代理模式示例分析",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Java的代理模式示例分析"吧!定义代理模式(Proxy
千家信息网最后更新 2024年11月12日Java的代理模式示例分析
这篇文章主要讲解了"Java的代理模式示例分析",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Java的代理模式示例分析"吧!
定义
代理模式(Proxy Parttern) 为一个对象提供一个替身,来控制这个对象的访问,即通过代理对象来访问目标对象,这样做的话好处是可以在目标对象实现的基础上,进行额外的功能的扩展。
案例
需求
苹果公司通过苹果代理商来卖手机
方案:静态代理模式
定义抽象接口类,该类在代理模式中扮演的是一个抽象功能的角色,该案例中就是把出售手机抽象为了一个接口
/** * 售卖手机的接口(代理模式--抽象角色) * @author:liyajie * @createTime:2022/2/22 14:42 * @version:1.0 */public interface IPhone { /** * 出售手机 * @author: liyajie * @date: 2022/2/22 14:44 * @param * @return void * @exception: * @update: * @updatePerson: **/ void sellPhone();}
定义苹果手机公司类,该类在代理模式中扮演的是一个目标角色,实现了IPhone接口,重写出售手机的方法
/** * 苹果公司(代理模式--目标角色) * @author:liyajie * @createTime:2022/2/22 14:46 * @version:1.0 */public class TargetPhone implements IPhone { @Override public void sellPhone() { System.out.println("苹果公司正在出售手机"); }}
定义代理类,通过代理类进而调用目标类的出售手机的方法,并加上自己的扩展功能
/** * 代理商(代理模式--代理角色) * @author:liyajie * @createTime:2022/2/22 14:50 * @version:1.0 */public class ProxyPhone implements IPhone { private IPhone iPhone; public ProxyPhone(IPhone iPhone){ this.iPhone = iPhone; } @Override public void sellPhone() { System.out.println("代理商正在循环播放广告,赚取广告商广告费"); System.out.println("代理商正在推荐自己的电子周边产品,赚取费用"); iPhone.sellPhone(); System.out.println("代理商正在卖出苹果手机,赚取差价"); }}
代理商赚钱的奥秘尽在下图红框中,卖出了苹果手机赚钱,卖出了其他东西赚钱,广告费也赚钱
定义测试类
/** * 测试类 * @author:liyajie * @createTime:2022/2/22 14:55 * @version:1.0 */public class Test { public static void main(String[] args) { TargetPhone targetPhone = new TargetPhone(); ProxyPhone proxyPhone = new ProxyPhone(targetPhone); proxyPhone.sellPhone(); }}
查看结果
感谢各位的阅读,以上就是"Java的代理模式示例分析"的内容了,经过本文的学习后,相信大家对Java的代理模式示例分析这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!
代理
模式
手机
苹果
代理商
对象
目标
示例
分析
公司
广告
接口
正在
角色
功能
学习
内容
就是
广告费
方法
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
地狱服务器
app手机软件开发
网络安全协调局 副局长
保证了数据库的逻辑独立性的
无法登陆darksouls2服务器
审计署网络安全和信息化审计公告
贵阳瘾足网络技术有限公司
web服务器的三种类型
怎么查某个软件数据库
达索系统软件开发
软件开发和信息安全工程师
刺激战场服务器怎么设置
优炫软件网络安全
安卓后端服务器
渝中区软件开发培训
u8应用服务器安装
湖南服务器机箱云服务器
密云区信息化软件开发概况
江阴专注软件开发怎么样
网络技术发展的定律
医学网络技术考试
数据库中strtok的用法
dsp软件开发环境有几种
建邺区网络技术服务共同合作
减少优化MYSQL数据库的方法
数据库安全模式是什么意思
网络安全设备管理能力
软件开发环境和集成开发环境
查询数据库表名
涉及数据库技术应用