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

淘宝客自建手机网站app界面设计模板素材免费

淘宝客自建手机网站,app界面设计模板素材免费,公司微网站制作,泰安网络信息公司什么是代理模式 代理模式为另一个对象提供替身或者占位符#xff0c;以便控制客户对对象的访问#xff0c;管理访问的方式有很多种。例如远程代理、虚拟代理、保护代理等。 远程代理#xff1a;管理客户和远程对象之间的交互。 虚拟代理#xff1a;控制访问实例化开销大的对…什么是代理模式 代理模式为另一个对象提供替身或者占位符以便控制客户对对象的访问管理访问的方式有很多种。例如远程代理、虚拟代理、保护代理等。 远程代理管理客户和远程对象之间的交互。 虚拟代理控制访问实例化开销大的对象。 保护代理基于调用者控制对对象方法的调用。 类图 代码 案例防止对person类的访问中访问了不该访问的方法 以保护代理为例主要是基于java内置的动态代理来控制对对象方法的调用其类图如下 Person接口 public interface Person {String getName();String getGender();String getInterests();int getGeekRating();void setName(String name);void setGender(String gender);void setInterests(String interests);void setGeekRating(int rating); } Person实现类 public class PersonImpl implements Person{String name;String gender;String interests;int rating;int ratingCount 0;public PersonImpl(String name, String gender, String interests, int rating, int ratingCount) {this.name name;this.gender gender;this.interests interests;this.rating rating;this.ratingCount ratingCount;}Override public String getName() {return name; }Override public void setName(String name) {this.name name; }Override public int getGeekRating() {if (ratingCount 0) {return 0;} else {return rating / ratingCount;} }Override public void setGeekRating(int rating) {this.rating rating;ratingCount; }Override public void setGender(String gender) {this.gender gender; }Override public String getGender() {return gender; }Override public String getInterests() {return interests; }Override public void setInterests(String interests) {this.interests interests; } NonOwnerInvocationHandler类 //InvocationHandler public class NonOwnerInvocationHandler implements InvocationHandler {Person person;public NonOwnerInvocationHandler(Person person) {this.person person;}Override public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {try {if (method.getName().startsWith(get)) {return method.invoke(person, args);} else if (method.getName().equals(setGeekRating)) {return method.invoke(person, args);} else if (method.getName().startsWith(set)) {throw new Throwable();}} catch (InvocationTargetException e) {e.printStackTrace();}return null; } } OwnerInvocationHandler类 public class OwnerInvocationHandler implements InvocationHandler {Person person;public OwnerInvocationHandler(Person person) {this.person person;}// Override public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {try {if (method.getName().startsWith(get)) {return method.invoke(person, args);} else if (method.getName().equals(setGeekRating)) {throw new Throwable();} else if (method.getName().startsWith(set)) {return method.invoke(person, args);}} catch (InvocationTargetException e) {e.printStackTrace();}return null; } } 测试 public class Test {public static void main(String[] args) {Person kang new PersonImpl(kwb, boy, ball, 1, 3);Person owner getProxy.getOwnerProxy(kang);System.out.println(owner.getName());} }区别 装饰器模式为对象加上行为而代理则是控制访问。
http://www.zqtcl.cn/news/424463/

相关文章:

  • 成都平台网站建设公司邯郸网络科技公司
  • 热门课程自己做网站大型购物网站建站
  • apache 创建网站重庆建站模板
  • 手机怎么制作网站叶县建设局网站
  • 怎么做后台网站一键更新搜索引擎优化的主要策略
  • 站酷网免费素材图库官网国外域名购买
  • 石家庄个人谁做网站天体摄影
  • 徐州集团网站建设网站排名快速提升工具
  • 自己创业做原公司一样的网站做网站要学会什么语言
  • 宿州高端网站建设公司网络业务
  • 做多语言版本网站网站收录低
  • 鼎湖网站建设江门网站优化快速排名
  • 做交通事故的网站北京物联网app开发公司
  • 网站建设中 页面网络培训注册会计师
  • app网站如何做推广安装wordpress错误
  • 八零婚纱摄影工作室网站南昌微信营销公司
  • 海南网站开发公司百度网站建设费用怎么做账
  • 做网站的研究生专业微信公众号推广的方法
  • sql网站开发数据库连接失败wordpress改全屏
  • 做外贸怎么上国外网站网上注册公司流程图文
  • 网站开发 慕课厦门建设局网站技司学校
  • 中山自助建站系统多个网站能否统一做等保
  • 做网站怎么别人搜不出来电商购物网站开发需求分析
  • 教育网站设计用模板做的网站不好优化
  • php网站api接口写法中国做铁塔的公司网站
  • 做博客网站如何盈利wordpress百家号
  • 读经典做临床报名网站cnzz 网站跳出率查询
  • 青岛网站建设网站广东手机网站制作公司
  • 个人免费建站软件影视传媒网站源码
  • 网站软件下载app如何做国外网站