随笔-17  评论-17  文章-4  trackbacks-2
02 2007 档案
第12章 文本处理 (1)
摘要: 12.1 字符一个字符由一个System.Char结构实例表示,该类型提供了两个常数字段:MinValue(0x0000)和MaxValue(0xFFFF)Char的静态方法GetUnicodeCategory以一个Char实例作为参数,返回一个System.Globalization.UnicodeCategory枚举值,我们可以根据该枚举值判断传入的字符的类型Char类型还提供有其他几个静态方...阅读全文
posted @ 2007-02-14 15:34 jiangnii 阅读(310) | 评论 (0) 编辑
第11章 事件
摘要: 11.1 发布事件classMailManager{//1、在MailManager内部定义MailMsgEventArgs类型publicclassMailMsgEventArgs:EventArgs{//传递给事件接受者的类型定义信息publicMainMsgEventArgs(Stringfrom,Stringto,Stringsubject,Stringbody){this.from=fr...阅读全文
posted @ 2007-02-13 17:24 jiangnii 阅读(87) | 评论 (0) 编辑
第10章 属性
摘要: 10.1 无参属性无参属性(parameterless property)就是通常说的属性(property)。CLR支持静态属性、实例属性和虚属性。属性可以标记任何的访问限定修饰符,也可以被定义在接口中。属性不能被重载定义一个同时带get和set方法的属性时,编译器会在生成的托管模块中产生一个表示属性的get访问器方法和一个表示属性的set访问器方法,以及一个位于托管模块元数据中的属性定义,其中...阅读全文
posted @ 2007-02-13 14:53 jiangnii 阅读(121) | 评论 (0) 编辑
第9章 方法 (2)
摘要: 9.5 引用参数CLR假设所有的方法参数都是按值传递,当参数为引用类型的对象时传递的是引用/指针的值,而值类型对象传递的是对象实例的一个拷贝C#中我们可以用out和ref关键字指定方法按引用的方式传递参数,从IL或CLR的角度来看out和ref关键字的行为实际上是一样的,二者的不同之处在于编译器会根据它们选择不同的机制来确保代码的正确性。开发时指定out和ref的好处是可以清晰的表示开发者的意图C...阅读全文
posted @ 2007-02-13 11:57 jiangnii 阅读(84) | 评论 (0) 编辑
第9章 方法 (1)
摘要: 9.1 实例构造器CLR要求每个引用类型至少定义一个实例构造器。在创建一个引用类型的实例时,系统首先为该实例分配内存,然后初始化对象的附加成员(即方法表指针和一个SyncBlockIndex),最后调用类型的实例构造器设置对象的初始化状态对于引用类型,默认情况下如果没有显式定义实例构造器,许多编译器包括C#都会自动定义一个公有的无参构造器少数几种情况下,类实例的创建不需要调用实例构造器,如调用Ob...阅读全文
posted @ 2007-02-12 18:17 jiangnii 阅读(82) | 评论 (0) 编辑
第8章 常数与字段
摘要: 8.1 常数常数通常只能是编译器认为的基元类型,在编译时编译器将常数的值保存在其所定义模块的元数据内。枚举类型由于本身以基元类型形式存储,故也可以被用来定义常数。(这里枚举以基元类型存储不知道是指在CTS里都是这样还是特指C#里的做法)常数总是被认为是类型的一部分而非实例C#不允许为常数指定static关键字,因为常数隐含为static因为常数是在编译时被直接把值嵌入到IL代码中,而不是运行时加载...阅读全文
posted @ 2007-02-12 13:44 jiangnii 阅读(50) | 评论 (0) 编辑
第4章 类型基础
posted @ 2007-02-09 12:22 jiangnii 阅读(61) | 评论 (0) 编辑