您的位置:首页 > 编程语言 > C#

(原创)c#学习笔记08--面向对象编程简介02--OOP技术07--引用类型和值类型

2015-11-03 13:50 841 查看
[b]8.2.7 引用类型和值类型 [/b]

  在C#中,数据根据变量的类型以两种方式中的一种存储在一个变量中。变量的类型分为两种:引用类型和值类型,其区别如下:

    值类型在内存的一个地方存储它们自己和它们的内容。

    引用类型存储指向内存中其他某个位置(称为堆)的引用,而在另一个位置存储内容。

  实际上,在使用C#时,不必过多地考虑这个问题。到目前为止,所使用的string变量(这是引用类型)与使用其他简单变量(大多数是值类型,例如int)的方式完全相同。

  值类型和引用类型的一个主要区别是,值类型总是包含一个值,而引用类型可以是 null,表示它们不包含值。但是,可以使用可空类型(这是泛型的一种形式)创建一个值类型,使值类型在这个方面的行为方式类似于引用类型(即可以为null)。这是一个高级论题,详见第12章。

  只有 string 和 object 简单类型是引用类型,但数组也是隐式的引用类型。我们创建的每个类都是引用类型,这就是在这里说明这一点的原因。

  note: 结构类型和类的重要区别是,结构类型是值类型。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: