国外的设计网站app,有什么好的免费网站做教育宣传语,中信建设有限责任公司董事长,seo编辑培训代理模式#xff1a;为另一个对象提供一个替身或占位符控制这个对象的访问 特点#xff1a; 让代理对象控制对象的访问#xff0c;被代理对象可以是远程对象#xff08;远程代理#xff09;#xff0c;创建开销较大对象#xff08;虚拟代理#xff09;#xff0c;或需…代理模式为另一个对象提供一个替身或占位符控制这个对象的访问 特点 让代理对象控制对象的访问被代理对象可以是远程对象远程代理创建开销较大对象虚拟代理或需要安全控制的对象保护代理为另一个对象提供代表以便控制客户对对象的访问 代理分类 远程代理好比远程对象在不同JVM虚拟机的对象的本地代表本地方法的行为转移到远程帮助我们处理网络上的细节 代理假装自己是远程对象不过只是一个中间角色处理访问远程对象 Java RMI提供了客户辅助对象stub和服务辅助对象skeleton并为其提供相同的方法 注意方法返回值需要设置为可序列化对象Serializable不需要序列化的状态变量使用transient声明注意处理远程访问异常执行过程从远程获取代理对象 -》客户调用代理对象的方法 -》调用发送到远程 -》远程接受调用信息并在具体对象上操作 -》获得结果返回给代理 -》代理把结果告诉客户虚拟代理作为创建开销大的对象的代表 在大对象创建前和创建中由虚拟对象代替大对象在创建完毕后将动作委派给大对象保护代理通过代理实现不同的用户对对象有不同的访问权限动态代理通过反射在运行过程中动态的创建代理根据传入的接口集创建。Java内置动态代理支持防火墙代理控制网络资源的访问保护主题免于坏客户的侵害智能引用代理当主题被引用时进行额外的动作例如记录独享被引用的次数缓存代理为开销大的运算结果提供暂时存储允许多个客户共享结果减少计算或网络延迟同步代理多线程下为主题提供安全访问复杂隐藏代理用来隐藏一个类的复杂集合的复杂度写入时复制代理用来控制对象的复制延迟对象的复制知道客户真的需要转载于:https://www.cnblogs.com/HectorHou/p/6014159.html