C#的五大数据类型
-
类 class
-
结构体 struct
-
枚举 enum
-
接口 interface
-
委托 delegate
变量、对象、内存中的关系
1- 变量: 表示了存储位置,并且每个变量都一个类型,以决定什么样的值能够存入变量
变量一种7种:
静态变量,实例变量,数组元素,值参数,引用参数,输出形参,局部变量
局部变量:在方法体(函数体)里声明的变量
静态成员变量: Amount 直接隶属于 Student这个类,而不需要实例化
实例变量:age 不隶属于Student这个类,需要实例化stuAge后才能调用
数组元素
从array[0]到array[99]都是数组元素,都是变量
值参数变量: a,b就是值参数变量
引用参数 a
输出类型参数 b
局部变量: x声明在函数体里,所以x就是局部变量
如何去声明一个变量
声明:程序员告诉编译器,我告诉你一个变量,你要认识他
上图中 Int x 就是声明,让编译器认识x。
变量=以变量名所对应的内存地址为起点、以其数据类型所要求的内存空间为长度的一块内存区域。
值类型的变量
引用类型和值类型在内存中的存储
引用类型在内存中的存储
引用类型的变量里存着的数据是堆里面对象的内存地址。
装箱拆箱
1- 装箱:把栈上值封装成一个object的实例向堆上搬
2- 拆箱:把堆上的Object的实例里的值拆成目标数据类型,存储到栈上
装箱和拆箱会损失程序的性能。