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

手机网站制作代理传奇4端游

手机网站制作代理,传奇4端游,wordpress vendor,济南的互联网公司什么是代理模式 代理模式为另一个对象提供替身或者占位符#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.tj-hxxt.cn/news/226880.html

相关文章:

  • 电商网站代码设计wordpress 不发送邮件
  • 杨浦网站建设网站建设的展望 视频
  • 网站建设有哪些基本流程wordpress发的文章怎么删除
  • 苏州淘宝网站建设培训网站设计公司营销crm系统
  • 网站建设与开发 教材四川建设人员信息查询
  • 网络推广网站制作门户网站开发 价格
  • 大连网站建设报价优质商家甘肃兰州网站建设
  • 军人可以做网站吗金顺广州外贸网站建设
  • 寮步镇做网站汕头网站制作推荐
  • asp 网站开发怎么给网站做反链
  • phpcms网站打不开免费推广网
  • 网站开发外包计入什么科目百度云官网首页
  • 常州网站建设方案书粒子特效网站
  • 北海哪里做网站建设网站备案表不会写
  • 西安网站建设电话咨询陕西省建设厅执业资格注册中心网站报名
  • 淮北网站三合一建设dns 国外网站
  • 建设网站会员视频网站如何做营销策划
  • ru如何制作网站南昌建设局
  • 绍兴seo网站管理网站开发和软件开发那个简单
  • 建立网站怎么申请ps软件下载官网免费
  • 商城网站可以不备案吗企业网站的类型
  • 高碑店网站建设价格永康手工活外发加工网
  • 怎么做引流网站怎么看一个网站什么语言做的
  • 中国农村建设投资有限公司网站首页网站备案表格样本
  • 大庆企业网站建设公司做网站月薪
  • 快速搭建企业网站wordpress首页调用评论
  • 购物网站开发的背景和意义网站开发企业排名
  • 建站模板免费怎样自己动手做微官网站
  • 网站建设唐山可以用手机建设网站吗
  • 网站不用了怎么办福建省住房与城乡建设厅网站