Facade
<>2.>3.>4.>5.>6.>7.>8.>9.>10.>11.>12.>13.>14.>15.>16.>17.>18.>19.>20.>21.>22.>23.>24.>25.>26.>27.>28.>29.>30.>31.Subsystemclasse*
<>33.>34.>35.>36.>37./>/>/>/>>>>>>>>>
<>38.>39.>40.>41.>42.>43.>44./>/>/>/>/>/>>>>>>>>>>>>>
<>45.>46.>47.>48.>49.>50.>51./>/>/>/>/>/>>>>>>>>>>>>>
<>52.>53.Test
<>55.>56.>57.>58.>59.>60.>61.>62.>63.>64.>65./>/>/>/>/>/>/>/>/>/>>>>>>>>>>>>>>>>>>>>>
<>66.>67.>68.>69.>70.>71.resu*t
<>73.>74.>75.>76.>77.>78.>79.>80./>/>/>/>/>/>/>>>>>>>>>>>>>>>
fly1.action(1);
Flyweight fly* = FlyweightFactory.getF*yweight("a");
System.out.println(fly1 == fly2);
Flyweight fl*3 = FlyweightFactory.getFlywei*ht("b");
fly3.action(2);
Flyweight fly4 = Flyweigh*Factory.getF*yweight("c");
fly4.action(3);
Flyweigh* fly5 = FlyweightFactory.getFlyweight("d");
fly4.action(4);
System.out.println(FlyweightFactory.getSize())*
}
}
result
参数值: 1
true
参数值: 2
*数值: 3
参数值: 4
4
11.代理模式:
引用普遍的解释(个人觉得这个模式还是很有用的,这种解释也很到位):为其他对象提供一种代理以控制对这个对象的访问。
然后贴上摘自网络的这种模式的适用场合:
1.远程代理(RemoteProxy)为一个对象在不同的地址空间提供局部代表。
2.虚*理(VirtualProxy)根据需*创建开销很大的对象。
3.保护代理(ProtectionProxy)控制对原始对象的访问。
4.智能指引(SmartReference)取代了简单的指针,它在访问对象时执行一些附加操作。
这个代理可以是一种引用,这个引用时的用户可以对于这个对象作出想要的操作。在代理这种模式下,其实还是有点像是对要代理的对象做一个继承,然后进行局部的改变。
例子代码:
Proxy
public class ProxyObject implements Object {
Objec* obj;
public ProxyObject() {
System.out.println("这是代理类");
o*j = new ObjectImpl();
}
public void ac*ion() {
System.out.p*intln("代理开始");
obj.action*);
System.out.println(*代理结束");
}
}
Subject
public interface Obje*t {
void action();
}
RealSubject
public class ObjectImpl implements Object {
pu*lic void action() {
System.out.println("========");
System.out.println("========");
System.out.pr*ntln("这是被代理的类");
System.out.println("========");
System.out.println("========");
}
}
Test
public class Test {
publi* static void main() {
Object ob* = new ProxyObject();
obj.action();
*
}
result
这是代理类
代理开始
========
=*======
这是被代理的类
========
======*=
代理结束/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/> />/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/> />/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>/>
文章评论(0条评论)
登录后参与讨论