代理模式的应用:
1 远程代理:简单来说就是在本地创建了一个代理类,这个代理类负责与远程服务器的具体操作,例如网络通信等,用户使用时就像操作本地类一样。
IAddressBook adbk = new IAddressBook();是在本地创建的对象,不能远程操作 adbk = (IAddressBook)RemotingHelper.GetObject( typeof(RemotingHelper) );是获取远程实例,以后就用这个代理来进行远程操作
2 虚拟代理,例如网页加载时,里边的图片没有马上加载,而是通过虚拟实体来存储图片的具体路径;
3 安全代理,用来控制真实实体的访问权限;
4 智能指引,也就是C++智能指针的实现方式,计算真实对象的引用次数;