Java设计模式——代理模式

Java设计模式之代理模式

这期式结构型模式中的最后一个,这么多结构型模式会给程序设计的过程中带来很多便利,也会带来很多疑惑。最近会整理一期比较完整的设计模式总结篇。希望大家多多关注。

简介

通过代理控制被代理对象的访问。


Java设计模式——代理模式_第1张图片

使用场景

  • 隐藏服务类通过代理提供对外服务
  • 通过代理添加被代理类的访问控制权限
  • 对被代理类的方法进行扩展

实例

静态代理

静态代理是在编译期就已经决定了被代理的类是哪一个。


Java设计模式——代理模式_第2张图片

输出


Java设计模式——代理模式_第3张图片

动态代理

动态代理是在运行期才决定被代理的类是哪一个。


Java设计模式——代理模式_第4张图片

输出


Java设计模式——代理模式_第5张图片

总结

代理模式不单单可以用作程序设计,在架构设计上也是非常重要的。比方说通过代理进行服务注册与发现,或者统一路由选择等功能。还有网络上的代理(爬虫)等等例子。所以如果希望可以多了解这方面的知识可以查询相关的资料。

你可能感兴趣的:(Java设计模式——代理模式)