23种设计模式-代理模式
来源:互联网 发布:简笔画制作软件 编辑:程序博客网 时间:2024/05/16 17:21
[java] view plain copy
//接口定义 public interface MessageHandler { public void sendMessage(String msg); } //通过Email方式发送消息的实现类 public class EmailMessage implements MessageHandler { @Override public void sendMessage(String msg) { // TODO Auto-generated method stub System.out.println(msg+" send!!"); } } //消息处理的代理类 public class MessageProxy implements MessageHandler { private static int count; private MessageHandler emailMsg; @Override public void sendMessage(String msg) { // TODO Auto-generated method stub if(checkMessage(msg)) { if(emailMsg==null) emailMsg=new EmailMessage(); count++; emailMsg.sendMessage(msg); System.out.println("Message sent:"+count); } } private boolean checkMessage(String msg) { return msg != null && msg.length() > 10; } } //调用类 public class MainClass { private static void runProxy(MessageHandler handler) { handler.sendMessage("message for test"); } /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub runProxy(new EmailMessage()); System.out.println("++++++++++++++++Pjroxy++++++++++++++++++"); runProxy(new MessageProxy()); } } 输出 message for test send!! ++++++++++++++++Pjroxy++++++++++++++++++ message for test send!! Message sent:1
代理模式指,使用这个类时不直接去调用它,而是通过一个中间代理去调用
0 0
- 23种设计模式之代理模式
- 23种设计模式--代理模式
- 23种设计模式03------代理模式
- 23种设计模式(17):代理模式
- 23种设计模式之代理模式
- 23种设计模式-代理模式
- 23种设计模式07---代理模式
- 23种设计模式之代理模式
- 23种设计模式(8)-代理模式
- 23种设计模式之代理模式
- 23种设计模式-----代理模式(proxy)
- 【23种设计模式】结构型模式 > 代理模式
- 设计模式--【代理模式】
- 设计模式:代理模式
- 设计模式--代理模式
- 设计模式---代理模式
- 设计模式-代理模式
- 设计模式---代理模式
- bzoj 4571: [Scoi2016]美味
- 代理服务器shadowsocks下载
- 断言(ASSERT)的用法
- 如何选择客厅的位置设计
- SPSS基础教程:SPSS菜单命令详解(三)
- 23种设计模式-代理模式
- Java Annotation
- Spring中@Controller和@RestController之间的区别
- maven入门学习(1)--maven简介
- CentOS 下安装 Apache 和 PHP 并开启 mcrypt 扩展
- Web前端开发环境搭建以及公司私服搭建
- BOS EAS 实体增加字段,关联核算项目
- numpy和matplotlib在win下的配置
- saltstack[3]-关于EXECUTION 与STATE FUNCTION的思考