图解DotNet框架之二:System
2008-07-21 11:35
253 查看
(声明:本系列只想给大家介绍.net框架,并不是语法和类的使用的讲解,所以只能概括的描述一下所提到的类,如果有疑问可以到MSDN上面去查)
前面我们学习了.net的运行引擎,知道了Appdomain要承载各种dll,那么我们就来学习一下最基本的system.dll,这个任何代码都要引用的大家伙.
还是老规矩,图解..嘿嘿上图了
static void Main(string[] args)
namespace ConsoleApplication3
所以说按照引用(ref)传递引用类型,传递的是本身。而按照值传递,传递的是引用类型的引用。
Delegate:委托的基类,要注意delegate关键字,继承自MulticastDelegate,而MulticastDelegate继承自Delegate.委托类型维护的方法的地址列表,就保存在Delegate这个对象当中.这就是.Net委托的秘密.这里用到了GOF23中Proxy(代理)这种设计模式,起到下述 3)保护代理的作用。
在需要用比较通用和复杂的对象指针代替简单的指针的时候,使用P r o x y 模式。下面是一 些可以使用P r o x y 模式常见情况:
1) 远程代理(Remote Proxy )为一个对象在不同的地址空间提供局部代表。
2 )虚代理(Virtual Proxy )根据需要创建开销很大的对象。
3) 保护代理(Protection Proxy )控制对原始对象的访问。保护代理用于对象应该有不同 的访问权限的时候。
4 )智能指引(Smart Reference )取代了简单的指针,它在访问对象时执行一些附加操作。
在这里Delegate作为RealSubject,而multicastDelegate作为Proxy,来保护Delegate中的一些方法.
委托还有异步调用,这将在System.threading这一节来讲解.
下一篇: .NET 框架与架构模式和设计模式详解系列(图解DotNet框架)之二:System.IO
前面我们学习了.net的运行引擎,知道了Appdomain要承载各种dll,那么我们就来学习一下最基本的system.dll,这个任何代码都要引用的大家伙.
还是老规矩,图解..嘿嘿上图了
static void Main(string[] args)
namespace ConsoleApplication3
所以说按照引用(ref)传递引用类型,传递的是本身。而按照值传递,传递的是引用类型的引用。
Delegate:委托的基类,要注意delegate关键字,继承自MulticastDelegate,而MulticastDelegate继承自Delegate.委托类型维护的方法的地址列表,就保存在Delegate这个对象当中.这就是.Net委托的秘密.这里用到了GOF23中Proxy(代理)这种设计模式,起到下述 3)保护代理的作用。
在需要用比较通用和复杂的对象指针代替简单的指针的时候,使用P r o x y 模式。下面是一 些可以使用P r o x y 模式常见情况:
1) 远程代理(Remote Proxy )为一个对象在不同的地址空间提供局部代表。
2 )虚代理(Virtual Proxy )根据需要创建开销很大的对象。
3) 保护代理(Protection Proxy )控制对原始对象的访问。保护代理用于对象应该有不同 的访问权限的时候。
4 )智能指引(Smart Reference )取代了简单的指针,它在访问对象时执行一些附加操作。
在这里Delegate作为RealSubject,而multicastDelegate作为Proxy,来保护Delegate中的一些方法.
委托还有异步调用,这将在System.threading这一节来讲解.
下一篇: .NET 框架与架构模式和设计模式详解系列(图解DotNet框架)之二:System.IO
相关文章推荐
- 图解DotNet框架之六:System.XML
- 图解DotNet框架之六:System.XML
- 图解DotNet框架之五:System.Reflection
- 图解DotNet框架之二:System
- 图解DotNet框架之二:System
- 图解DotNet框架之四:System.Data
- 图解DotNet框架之三:System.IO
- 图解DotNet框架之三:System.IO
- 玩转Google开源C++单元测试框架Google Test系列(gtest)之二 - 断言
- 视频编解码学习之二:编解码框架
- 项目搭建系列之二:SpringMVC框架下配置MyBatis
- 自己动手搭建ava通用开发框架之二—后台页面技术选型
- VS2010/MFC编程入门之二(利用MFC向导生成单文档应用程序框架)
- MFC学习笔记之二----------MFC框架程序及消息映射
- 跨浏览器插件框架FireBreath安装与使用之二——Linux下的插件
- Swing应用程序框架(Swing Application Framework)API绪论(JSR-296)之二(翻译)
- Volley框架之二 基本流程
- 集合框架,Math,System,Runtime,Scanner
- android_audio_system框架
- media and camera 框架之二: MediaRouter