2012年5月14日

12.C#编程指南-结构

摘要: 结构是使用 struct 关键字定义的,例如:public struct PostalAddress{ // Fields, properties, methods and events go here...}结构与类共享大多数相同的语法,但结构比类受到的限制更多:在结构声明中,除非字段被声明为 const 或 static,否则无法初始化。结构不能声明默认构造函数(没有参数的构造函数)或析构函数。结构在赋值时进行复制。 将结构赋值给新变量时,将复制所有数据,并且对新副本所做的任何修改不会更改原始副本的数据。 在使用值类型的集合(如 Dictionary<string, myStruct 阅读全文

posted @ 2012-05-14 22:47 YeChun 阅读(166) 评论(0) 推荐(0) 编辑

11.C#编程指南-对象

摘要: 类或结构定义的作用类似于蓝图,指定该类型可以进行哪些操作。从本质上说,对象是按照此蓝图分配和配置的内存块。程序可以创建同一个类的多个对象。对象也称为实例,可以存储在命名变量中,也可以存储在数组或集合中。使用这些变量来调用对象方法及访问对象公共属性的代码称为客户端代码。对象标识与值相等性在比较两个对象是否相等时,首先必须明确您是想知道两个变量是否表示内存中的同一对象,还是想知道这两个对象的一个或多个字段的值是否相等。如果您要对值进行比较,则必须考虑这两个对象是值类型(结构)的实例还是引用类型(类、委托、数组)的实例。若要确定两个类实例是否引用内存中的同一位置(意味着它们具有相同的标识),可使用静 阅读全文

posted @ 2012-05-14 18:34 YeChun 阅读(179) 评论(0) 推荐(0) 编辑

10.C#编程指定-类

摘要: “类”是一种构造,通过使用该构造,您可以将其他类型的变量、方法和事件组合在一起,从而创建自己的自定义类型。 类就像一个蓝图, 它定义类型的数据和行为。 如果类没有声明为静态类,客户端代码就可以创建赋给变量的“对象”或“实例”,从而使用该类。 在对变量的所有引用都超出范围之前,该变量始终保持在内存中。 所有引用都超出范围时,CLR 将标记该变量以供垃圾回收。 如果类声明为静态类,则内存中只存在一个副本,并且客户端代码只能通过该类自身而不是“实例变量”访问该类。创建对象Customer object1 = new Customer();创建类的实例后,将向程序员传递回对该对象的引用。在前面的示例中 阅读全文

posted @ 2012-05-14 17:38 YeChun 阅读(233) 评论(0) 推荐(0) 编辑

9.C#编程指南-类和结构

摘要: 类和结构是.NET Framework中的常规类型系统的两种基本构造。两者在本质上都属于数据结构,封装着一组整体作为一个逻辑单位的数据和行为。数据和行为是该类或结构的“成员”,它们包含各自的方法、属性和事件等。类是一种“引用类型”。创建类的对象时,对象赋值到的变量只保存对该内存的引用。将对象引用赋给新变量时,新变量引用的是原始对象。通过一个变量做出的更改将反映到另一个变量中,因为两者引用同一数据。结构是一种“值类型”。创建结构时,结构赋值到的变量保存该结构的实际数据。将结构赋给新变量时,将复制该结构。因此,新变量和原始变量包含同一数据的两个不同的副本。对一个副本的更改不影响另一个副本。封装“封 阅读全文

posted @ 2012-05-14 11:09 YeChun 阅读(246) 评论(0) 推荐(0) 编辑

导航