类和数据类型有什么区别?
我听到以下声明:
我们可以说class是数据类型或数据类型是一种类。
任何人都可以向我解释这究竟是什么意思?
C#是一种强类型语言; 因此,每个变量和对象都必须具有声明的类型。
数据类型可以描述为:
内置数据类型,例如int或char,或
用户定义的数据类型,例如类或接口。
数据类型也可以定义为:
值类型(C#参考),用于存储值或
引用类型(C#引用),用于存储对实际数据的引用。
** Class是用户定义数据类型。 **
类是引用类型。
如果数据类型将数据保存在自己的内存分配中,则数据类型是值类型。
引用类型在堆上分配,内存管理由垃圾收集器处理。 值类型在堆栈或内联中分配,并在超出范围时释放。 通常, 值类型分配和取消分配更便宜。
比如说
class Person { string name; }
在此类Person
是引用类型, name
是值类型即数据类型。
struct Person { string name; }
在这里,struct Person
是值类型, name
也是值类型,即两者都是数据类型。
如果数据类型将数据保存在其自己的内存分配中,则该数据类型是值类型。 引用类型包含指向保存数据的另一个内存位置的指针。
参考MSDN关于类和结构的 文章以及有关引用类型和值类型的MSDN文章
class是面向对象的编程概念,数据类型对所有编程范例都是通用的。 Class是数据类型,但数据类型不是类
来自MSDN的这篇文章在这方面可能有一些用处。 它试图用C#来解释对象,类和结构是什么。
类只是C#中可用的数据类型之一:
数据类型:
- 类
- 结构
- 枚举
- 代表
- 接口
注意:我可能会遗漏上面列表中的一些内容
类是一种数据类型。 它允许您声明变量及其数据类型。 例如:
class big { public int a; ....... ...... }
这里, int
是数据类型, big
是类名。
希望你对它一无所知!
类是数据类型。 数据类型是一个概念,它不是一个类。 也就是说,你看一些东西并对自己说“嗯,是的,那是某种类型的数据”,或者“就是这种数据类型”。 然后你说“具体来说,数据类型是List <..>”,依此类推。
类是一种数据类型。 其他类型的数据类型包括指针类型和接口。
如果用户创建类,则类是数据类型,它被称为用户定义的数据类型。
所有(或几乎)所有编程语言都具有数据类型的概念。 数据类型可以是:整数,双精度,布尔值等。
C#和其他语言允许我们定义自己的“自定义”数据类型。 这就是类的用武之地.OO语言中的自定义数据类型称为类,当我们定义这些类时,它是类型定义或类型。
请查看此Wikipedia页面以获取更多信息