• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

JAVA 静态代理模式详解及实例应用

java 搞代码 4年前 (2022-01-09) 12次浏览 已收录 0个评论

JAVA 静态代理模式

代理模式(Proxy):为其他对象提供一种代理以控制对这个对象的访问。

代理模式说白了就是“真实对象”的代表,在访问对象时引入一定程度的间接性,因为这种间接性可以附加多种用途。

在这实现代码之前,先讲一个简单的生活故事,我们都知道我们周边有很多公司有房屋买卖或租赁的业务,比如链家(LianJia),但链家本身是不存在任何实际房屋资产的,他所售卖租赁的房屋均需要房屋产权所有人(HomeMaster)提供,才得以实现公司的房源需求;同时公司要的卖房租房业务均需要公司员工(Seller)来实现,但员工要实现该方法,必须经过公司授权以及动用公司的业务资源渠道才可以完成任务。故事讲到这里,我们应该清楚这里的Seller其实就是代理模式中静态代理了,那么我们开始该模式的代码书写(这里省略了代理实现方法前后的业务逻辑):

interface LianJia{//LianJia提供房屋买卖的渠道方法(公司业务)  public void sellHouse();}class HomeMaster implements LianJia{//房主需要通过链家卖房(实现公司的业务渠道)  public void sellHouse(){    System.out.println("我有套房子要卖");  }}class Seller implements LianJia{//链家的业务需要Seller实现  private LianJia lj;//声明链家公司(可理解为必须证明该seller是链家的),方便调用方法  public <i style="color:transparent">本文来源gaodai$ma#com搞$代*码*网(</i>Seller(LianJia lj){    this.lj = lj;  }  public void sellHouse(){    lj.sellHouse();//实际实现方式需要调用公司的业务渠道方法  }}public class ProxyMode{  public static void main(String[] args){    HomeMaster hm = new HomeMaster();    Seller s = new Seller(hm);//代理代房主实现卖房需求    s.sellHouse();  }}

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

更多JAVA 静态代理模式详解及实例应用相关文章请关注搞代码


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:JAVA 静态代理模式详解及实例应用
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址