首页 / 设计模式 / 设计模式之静态代理模式
设计模式之静态代理模式
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了设计模式之静态代理模式,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1152字,纯文字阅读大概需要2分钟。
内容图文
举个栗子:
比如你结婚,婚庆公司帮你代理一些事情(布置婚房,准备午餐等),虽然婚前公司做的,但是是为你而做的
静态代理的设计模式的三要素:
1.真实角色
2.代理角色:代理角色需要具有真实角色的引用,这样才能实现对真实角色的代理
3.真实角色和代理角色要实现共同的接口
看个样例:
Staticproxy.java
package 设计模式; /** * @author :yb * @version 创建时间:2018-12-24 下午4:48:03 类说明 */ /* * 静态代理 设计模式 * 1.真实角色 * 2.代理角色:必须持有真实角色的引用,这样才能代理真实角色 * 3.二者实现了相同的接口 */ public class StaticProxy { public static void main(String[] args) { // 应用该代理 // 1.创建真实角色 You you = new You(); // 2.创建代理角色+引用真实角色的代理:you WeddingCompany weddingCompany = new WeddingCompany(you); // 3.执行任务 weddingCompany.marry(); /* * 虽然是执行的weddingCompany的marry() 但是仍是对you这个对象的的操作 */ } } // 共同的接口interface Marry { void marry();// 公共的抽象方法 } // 真实角色class You implements Marry { publicvoid marry() { System.out.println("you marry whith xxx!"); } } // 代理角色class WeddingCompany implements Marry { private Marry you; // 有参构造,因为代理要有真实角色的引用才能实现代理public WeddingCompany(Marry you) { this.you = you; } privatevoid before() { System.out.println("Decorate the wedding room"); } privatevoid after() { System.out.println("Arranging lunch"); } publicvoid marry() { you.marry(); before(); after(); } }
原文:https://www.cnblogs.com/yinbiao/p/10169851.html
内容总结
以上是互联网集市为您收集整理的设计模式之静态代理模式全部内容,希望文章能够帮你解决设计模式之静态代理模式所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。