类型存储和变量
Posted timeline
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了类型存储和变量相关的知识,希望对你有一定的参考价值。
C#程序是一组类型声明
a)C#程序或DLL的源代码是一组一种或多种类型的声明。
b)对于可执行程序,类型声明中必须由一个包含Main方法的类。
c)命名空间是一种把相关的类型声明分组并命名的方法
类型是一种模板
类型由下面元素定义:
a)名称
b)用于保存数据成员的数据结构
c)一些行为及约束条件
实例化类型
从某个类型模板创建实际的对象,称为实例化该类型。
a)通过实例化类型而创建的对象被称为类型的对象或类型的实例。
b)在C#程序中,每个数据项都是某种类型的实例。
数据成员和函数成员
数据成员:保存了与这个类的对象或作为一个整体的类相关的数据。
函数成员:执行代码。函数成员定义类型的行为。
预定义类型
所有预定于类型的名称都由全小写组成。
用户定义类型
a)类结构(class)
b)结构类型(struct)
c)数组类型(array)
d)枚举类型(enum)
e)委托类型(delegate)
f)接口类型(interface)
类型通过类型声明创建,类型声明包含以下信息:
a)要创建的类型种类
b)新类型的名称
c)对类型中每个成员的声明,array和delegate除外,他们不包含命名成员。
值类型和引用类型
值类型只需要一段单独的内存,用于存储实际的数据。
引用类型需要两段内存。
a)第一段存储实际的的数据,它总是位于堆中。
b)第二段是一个引用,指向数据在堆中的存放位置。
C#类型的分类
变量
变量是一个名称,表示程序运行时存储在内存中的数据
变量声明
变量在使用前必须声明。变量声明定义了变量,并完成了两件事
a)给变量命名,并为它关联一种类型
b)让编译器为它分配一块内存
变量初始化语句
除声明变量的名称和类型外,声明还能把它的内存初始化为一个明确的值
自动初始化
静态类型和dynamic关键字
静态类型:变量的类型在编译的时候确定并且不能在运行时修改。
dynamic:在编译时,编译器不会对dynamic类型的变量进行类型检查。它将与该变量及该变量的操作有关的所有信息打包。在运行时,会对这些信息进行检查,以确保它与变量所代表的实际类型保持一致,否则将在运行时抛出异常。
可空类型
可空类型允许创建可以标记为有效或无效的值类型,这样就可以在使用它之前确定值的有效性。
以上是关于类型存储和变量的主要内容,如果未能解决你的问题,请参考以下文章