·        对于所有simple-types,默认值是将其所有位都置零的位模式所形成的值:
o       对于sbyte、byte、short、ushort、int、uint、long和ulong,默认值为0。
o       对于char,默认值为'\x0000'。
o       对于float,默认值为0.0f。
o       对于double,默认值为0.0d。
o       对于decimal,默认值为0.0m。
o       对于bool,默认值为false。
·        对于enum-typeE,默认值为0。
·        对于struct-type,默认值是通过将所有值类型字段设置为它们的默认值、将所有引用类型字段设置为null而产生的值。
3.C#中有所谓的简单类型概念(simple type),类似于java的基本类型,但又不同,C#的简单类型本质上都是结构类型(预定义集合的结构类型),所以还是值类型,从 System.ValueType 继承而来。C#的简单类型包括:保留字
化名的类型
sbyte
System.SByte
byte
System.Byte
short
System.Int16
ushort
System.UInt16
int
System.Int32
uint
System.UInt32
long
System.Int64
ulong
System.UInt64
char
System.Char
float
System.Single
double
System.Double
bool
System.Boolean
decimal
System.Decimal
这些简单类型都是System命名空间中预定义结构类型的别名(ruby的别名实在贴心) 4.枚举类型, 枚举类型是具有命名常量的独特的类型。每个枚举类型都有一个基础类型,该基础类型必须为 byte 、 sbyte 、 short 、 ushort 、 int 、 uint 、 long 或 ulong 。如果没有为枚举类型中的元素指定基础值,默认是从0开始逐一递增。 三。引用类型1.引用类型是类类型、接口类型、数组类型或委托类型。
2.类类型:包括预定义的类类型和用户通过class关键字的自定义类类型
3.对象类型:
object类类型是所有其他类型的最终基类。C# 中的每种类型都是直接或间接从object类类型派生的。
关键字object只是预定义类System.Object的别名。
4.string类型: string 类型是直接从 object 继承的密封类类型。 关键字 string 只是预定义类 System.String 的别名. 5.接口类型: 与java中的接口概念基本一致,可以变相实现多重继承。类类型
说明
System.Object
所有其他类型的最终基类。
System.String
C# 语言的字符串类型。
System.ValueType
所有值类型的基类。
System.Enum
所有枚举类型的基类。
System.Array
所有数组类型的基类。
System.Delegate
所有委托类型的基类。
System.Exception
所有异常类型的基类。
四。装箱、拆箱概念 1.装箱和拆箱的概念是 C# 的类型系统的核心。它在 value-type 和 reference-type 之间的架起了一座桥梁,使得任何 value-type 的值都可以转换为 object 类型的值,反过来转换也可以。 2.装箱: 装箱转换允许将 value-type 隐式转换为 reference-type 。 装箱的行为可以用下面的过程描述:sealed class T_Box: System.ValueType {T value;
public T_Box(T t) { value = t;} }
分配一个对象实例 , 然后将 value-type 的值复制到该实例中 3.拆箱: 拆箱转换允许将 reference-type 显式转换为 value-type 。 从对象 box 到 value-type T 的拆箱转换相当于执行表达式 ((T_Box)box).value 文章转自庄周梦蝶 ,原文发布时间5.17