当前位置: 首页 > news >正文

乐清市网站建设公司青岛物流网站建设

乐清市网站建设公司,青岛物流网站建设,买卖域名的网站,西安建设厅官方网站目录 代理模式 简介 优缺点 角色职责 实现 运用场景 外观模式 简介 角色职责 优缺点 实现 使用场景 代理模式 简介 由于某些原因需要给某对象提供一个代理以控制对该对象的访问。这时#xff0c;访问对象不适合或者不能直接引用目标对象#xff0c;代理对象作为…目录 代理模式 简介 优缺点 角色职责 实现 运用场景 外观模式 简介 角色职责 优缺点 实现 使用场景 代理模式 简介 由于某些原因需要给某对象提供一个代理以控制对该对象的访问。这时访问对象不适合或者不能直接引用目标对象代理对象作为访问对象和目标对象之间的中介 优缺点 优点 1.在客户端与目标对象之间起到一个中介作用和保护目标对象的作用 2.可以扩展目标对象的功能 3.将客户端与目标对象分离在一定程度上降低了系统的耦合度增加了程序的可扩展性 缺点 1.会造成系统设计中类的数量增加 2.在客户端和目标对象之间增加一个代理对象会造成请求处理速度变慢 3.增加了系统的复杂度 角色职责 抽象主题Subject类通过接口或抽象类声明真实主题和代理对象实现的业务方法。 真实主题Real Subject类实现了抽象主题中的具体业务是代理对象所代表的真实对象是最终要引用的对象。 代理Proxy类提供了与真实主题相同的接口其内部含有对真实主题的引用它可以访问、控制或扩展真实主题的功能 实现 package proxy; public class ProxyTest {public static void main(String[] args) {Proxy proxy new Proxy();proxy.Request();} } //抽象主题 interface Subject {void Request(); } //真实主题 class RealSubject implements Subject {public void Request() {System.out.println(访问真实主题方法...);} } //代理 class Proxy implements Subject {private RealSubject realSubject;public void Request() {if (realSubject null) {realSubject new RealSubject();}preRequest();realSubject.Request();postRequest();}public void preRequest() {System.out.println(访问真实主题之前的预处理。);}public void postRequest() {System.out.println(访问真实主题之后的后续处理。);} }​ 运用场景 1.AOP通过定义切面、切入点和通知等Spring AOP在运行时生成代理对象将切面逻辑织入到目标对象的方法调用中。代理对象在方法调用前后执行附加操作如日志记录、性能监控等。 2.动态代理JDK动态代理、CGLIB代理当Bean类实现了接口时Spring使用JDK动态代理来为Bean生成代理对象当Bean类没有实现接口时Spring使用CGLIB代理来生成代理对象。   外观模式 简介 提供了统一的接口用来访问子系统中的一群接口。外观模式定义了一个高层接口让子系统更加容易使用。 角色职责 外观角色提供一个外观接口对外提供一个易于客户端访问的接口对内可以访问子系统中的所有功能。 子系统角色子系统在整个系统中可以是一个或者多个模块每个模块都是若干类组成这些类之间可能相互复杂的关系。 客户端外观接口调用测试者。 优缺点 优点 1.减少系统相互依赖 2.提高灵活性 3.提高了安全性 缺点 在不对外观类进行抽象的时候如果需要添加新的子系统就需要对外观类进行修改违背了开闭原则 实现 public class CPU {public void startup(){System.out.println(cpu startup!);}public void shutdown(){System.out.println(cpu shutdown!);} }public class Memory {public void startup(){System.out.println(memory startup!);}public void shutdown(){System.out.println(memory shutdown!);} }public class Disk {public void startup(){System.out.println(disk startup!);}public void shutdown(){System.out.println(disk shutdown!);} }public class Computer {private CPU cpu;private Memory memory;private Disk disk;public Computer(){cpu new CPU();memory new Memory();disk new Disk();}public void startup(){System.out.println(start the computer!);cpu.startup();memory.startup();disk.startup();System.out.println(start computer finished!);}public void shutdown(){System.out.println(begin to close the computer!);cpu.shutdown();memory.shutdown();disk.shutdown();System.out.println(computer closed!);} }//测试 public class User {public static void main(String[] args) {Computer computer new Computer();computer.startup();computer.shutdown();} }如果没有Computer类那么CPU、Memory、Disk他们之间将会相互持有实例产生关系这样会造成严重的依赖修改一个类可能会带来其他类的修改这不是我们想要看到的有了Computer类他们之间的关系被放在了Computer类里这样就起到了解耦的作用这就是外观模式 使用场景 1.对分层结构系统构建时使用外观模式定义子系统中每层的入口点可以简化子系统之间的依赖关系 2.当一个复杂系统的子系统很多时外观模式可以为系统设计一个简单的接口供外界访问 3.当客户端与多个子系统之间存在很大的联系时引入外观模式可将它们分离从而提高子系统的独立性和可移植性
http://www.hkea.cn/news/14563306/

相关文章:

  • 品牌网站建设策划寻找建设网站客户
  • 深圳做微信网站网站广审怎么做
  • 网站建设改版升级深圳市住宅和建设网站
  • 企业网站制作套餐网站负责人姓名
  • 门户型网站有哪些做网站需要提供哪些资料
  • 江苏股票配资网站建设山东外贸建站
  • 衡水网站建设服务商免费详情页模板网站
  • wordpress前台登录认证失败seo的内容主要有哪些方面
  • 江苏建设通网站设计网站源代码
  • 学校网站类型聊城做网站信息
  • 为把网站建设更好织梦可以做淘宝客网站吗
  • 哪个网站可以接图纸做网站如何做百度权重
  • 网站顾客评价网站推广专业术语
  • 做落地页素材在什么网站上找页面跳转的方法
  • 完整的网站后台权限编码深圳市做网站有哪些公司
  • 中投建设集团有限公司 网站运城seo
  • 给别人做网站怎么赚钱吗长沙外贸建站哪里好
  • 订阅号上链接的网站怎么做的dw做旅游网站毕业设计模板下载
  • 现在做个网站大概多少钱动态域名免费申请
  • 网站备案查询是什么意思成都装饰网站建设
  • 网站管理系统后台创建自己网站
  • 黄江建设网站seo排名赚app最新版本
  • 佛山做企业网站的公司竞价网站做推广方案
  • 昆明建网站公司常州公司网站建设多少钱
  • 中贤建设集团网站会议网站
  • 做网站需要买服务器接入备案和增加网站
  • 网站推广 公司网站开发 seo
  • 哈尔滨餐饮网站建设推广app平台有哪些
  • 龙岗高端网站设计专家福州+网站开发
  • 佛山网站建设公司价格供需平台类网站建设