C#是一种强类型的、面向对象的高级程序设计语言。以下是C#中的一些关键字,这些关键字可以根据它们的功能进行分类:
命名空间
- namespace: 用于定义一个命名空间,命名空间可以包含类、接口、结构体、枚举和委托。
类、结构和接口
- class: 用于定义一个类,类是面向对象编程的基本单元。
- struct: 用于定义一个结构体,结构体是轻量级的对象,通常用于存储一组相关的数据。
- interface: 用于定义一个接口,接口定义了一组方法,这些方法可以被任何类实现。
- enum:枚举。
- delegate:定义委托。
方法、属性和事件
- void: 用于指定一个方法不返回任何值。
- return: 用于从方法中返回一个值。
- property: 用于定义一个属性,属性是一个类的成员,它包含一个 getter 和/或一个 setter 方法。
- event: 用于定义一个事件,事件是一个类可以触发的方法,其他类可以订阅这个方法。
控制流
用于控制程序的流程。
- if: 用于根据条件执行代码块。
- else: 用于指定当 if 语句的条件为 false 时要执行的代码块。
- switch: 用于基于表达式的值执行多个操作中的一个。
- case: 用于定义 switch 语句中的一个可能的分支。
- while: 用于指定一个循环,该循环将运行特定次数,或者直到条件为 false。
- for: 用于指定一个循环,该循环将运行特定次数。
- foreach: 用于在集合中循环,并对每个元素执行操作。
- do: 用于指定一个循环,该循环至少运行一次,然后重复运行,直到条件为 false。
- default、while、do、for、foreach、break、continue、goto、return。
异常处理
用于处理异常情况。
- try: 用于指定一个异常块,该块包含可能引发异常的代码。
- catch: 用于指定当特定异常发生时要执行的代码块。
- finally: 用于指定无论是否发生异常都要执行的代码块。
- throw: 用于引发一个异常。
访问修饰符
用于设置类、方法、属性等的访问级别。
- public: 用于指定一个成员可以在任何地方访问。
- private: 用于指定一个成员只能在包含它的类中访问。
- protected: 用于指定一个成员只能在包含它的类及其派生类中访问。
- internal:用于指定一个成员只能在定义它的程序集内部访问。
- protected internal:用于指定一个成员只能在定义它的程序集及其派生类中访问。
- private protected:用于指定一个成员只能在定义它的类及其派生类中访问,并且这个派生类必须在同一个程序集中。
基本数据类型
- object:所有类型的基类,是一种通用类型,可以引用任何类型的对象。
- bool:表示布尔值,只有两个可能的值 true(真)和 false(假)。
- char:表示一个 16 位的 Unicode 字符。
- string:表示一个字符序列,即字符串。
- byte:无符号 8 位整数类型,取值范围是 0 到 255。
- sbyte:有符号 8 位整数类型,取值范围是 -128 到 127。与 byte 类似,但 sbyte 可以表示负数。
- short:16 位有符号整数类型,取值范围为 -32,768 到 32,767。
- ushort:16 位无符号整数类型,取值范围是 0 到 65,535。
- int:32 位有符号整数类型,是最常用的整数类型之一,取值范围为 -2,147,483,648 到 2,147,483,647。
- uint:32 位无符号整数类型,取值范围是 0 到 4,294,967,295。
- long:64 位有符号整数类型,取值范围比 int 更大,为 -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807。
- ulong:64 位无符号整数类型,取值范围是 0 到 18,446,744,073,709,551,615。
- float:单精度 32 位浮点型数据类型,同样用于表示带小数的数值,但精度比 double 低,取值范围也相对较小。
- double:双精度 64 位浮点型数据类型,用于表示带小数的数值,具有较高的精度和较大的取值范围
- decimal:高精度的十进制数据类型,主要用于需要精确计算货币值或其他对精度要求极高的场景。它最多可表示 28 位有效数字。
修饰符
用于修饰类、方法、属性等。
- new:创建新的对象实例或隐藏基类的成员。
- abstract:抽象的。
- sealed:密封的。
- override:重写。
- virtual:虚拟的。
- static:静态的。
- readonly :声明只读字段,其值只能在声明或构造函数中初始化。
其他关键字
- using:使用。
- assembly:程序集。
- base:基础。
- lock:锁定。
- return:返回。
- break:中断。
- continue:继续。
- null:空值。
- where:在泛型约束中指定类型参数必须满足的条件。
- partial:部分,用于分割类、结构或接口的定义到多个文件中。
- yield:在迭代器块中返回每个元素的值,用于实现迭代器。
- this:引用当前对象。
- base:引用基类的成员或构造函数。
- const:声明常量。
- typeof:获取类型的 Type的对象
- sizeof:获取类型的大小(以字节为单位)。
- default:获取类型的默认值。
- var:隐式类型推断关键字,允许编译器根据右侧表达式的类型推断变量的类型。