静态代理设计模式
Posted sunzhongyu008
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了静态代理设计模式相关的知识,希望对你有一定的参考价值。
静态代理模式,实现两个子类:代理子类、真实业务子类。
1 package com.proxy.demo; 2 3 public class SimpleProxy 4 public static void main(String[] args) 5 IMessage msg = new MessageProxy(new MessageReal()); 6 msg.send(); 7 8 9 10 interface IMessage 11 public void send(); 12 13 class MessageReal implements IMessage 14 public void send() 15 System.out.println("【消息发送】www.proxy.com"); 16 17 18 class MessageProxy implements IMessage 19 private IMessage message; 20 public MessageProxy(IMessage message) 21 this.message = message; 22 23 public boolean connect() 24 System.out.println("【消息代理】进行消息通道连接"); 25 return true; 26 27 public void send() 28 if(connect()) 29 this.message.send(); 30 this.close(); 31 32 33 public void close() 34 System.out.println("【消息代理】消息通道连接关闭"); 35 36
运行结果:
【消息代理】进行消息通道连接
【消息发送】www.proxy.com
【消息代理】消息通道连接关闭
静态代理模式缺点:
1.一个代理类只能为一个接口服务;
2.客户端的接口与具体的子类产生耦合。
在实际开发中,最好引入工厂模式进行代理对象的获取。
以上是关于静态代理设计模式的主要内容,如果未能解决你的问题,请参考以下文章