2011年6月28日星期二

  java设计模式9:Proxy(3)虚拟代理

加载延迟可以提高软件的友好程度。

当一个真实的主题对象的加载需要耗费资源时,一个虚拟代理对象可以代替真实对象接受请求。一旦接到请求,代理对象马上打出一段“正在加载”的信息,并在适当的时候加载真实主题对象,也就是模块或者图像。
简略图如下图所示:

image

本章将给出一个加载图像的例子,由于图像的加载会耗费一定的资源,因此,要求设计一个虚拟代理对象,以替代图像对象接受客户端的请求。当虚拟代理对象接到请求后,会按照预定的逻辑首先显示一段等待信息,然后在另一个线程中加载图像。当图像加载完成后,主线程会决定将图像显示出来。

系统由一个JFrame对象,一个Icon对象以及此Icon对象的虚拟代理对象组成,下图所示的类图显示了在者之间的关系。

此实例找不到代表性,需以后重新整理

没有评论:

发表评论