对象:
对象是具有数据、行为和标识的编程结构。对象数据包含在对象的字段、属性和事件中,对象行为则由对象的方法和接口定义。
对象具有标识 -- 数据集相同的两个对象不一定是同一对象。
C# 中的对象通过 classes 和 structs 定义 -- 该类型的所有对象都按照它们构成的同一蓝图操作。
-
C# 中使用的全都是对象,包括 Windows 窗体和控件。
-
对象是实例化的;也就是说,对象是从类和结构所定义的模板中创建的。
-
对象使用属性(C# 编程指南)获取和更改它们所包含的信息。
-
对象通常具有允许它们执行操作的方法和事件。
-
Visual Studio 提供了操作对象的工具:使用“属性”窗口可以更改对象(如 Windows 窗体)的属性。使用对象浏览器可以检查对象的内容。
-
所有 C# 对象都继承自 Object。
概念:
1.值类型:数据存储在内存的堆栈中,从堆栈中可以快速地访问这些数据,因此,值类型表示实际的数据。
2.引用类型:表示指向存储在内存堆中的数据的指针或引用(包括类、接口、数组和字符串)。
区别:
基本区别在于它们在内存中的存储方式。值类型只将值存放在内存中,这些值类型都存储在堆栈中。原始数据类型(如bool和int)都属于此类型。而引用类型的内存单元中只存放内存堆中对象的地址,而对象本身放在内存堆中。如果引用的值类型的值是null,则表示未引用任何对象。
直白点儿说:值类型就是现金,要用直接用;引用类型是存折,要用还得先去银行取现。
声明一个值类型变量,编译器会在栈上分配一个空间,这个空间对应着该值类型变量,空间里存储的就是该变量的值。引用类型的实例分配在堆上,新建一个引用类型实例,得到的变量值对应的是该实例的内存分配地址,
http://www.cnblogs.com/JimmyZhang/archive/2008/01/31/1059383.html