网站首页 > 技术文章 正文
关键字是保留字,在程序代码中不能将其用作变量名称,常量名称等。
在 C# 关键字不能用作标识符。但是,如果要使用关键字作为标识符,我们可以使用@字符加到关键字的前面,如:@class, @private等。
C# 编程语言中可用的保留关键字如下列表:
abstract | base | as | bool | break | catch | case |
byte | char | checked | class | const | continue | decimal |
private | protected | public | return | readonly | ref | sbyte |
explicit | extern | false | finally | fixed | float | for |
foreach | goto | if | implicit | in | in (generic modifier) | int |
ulong | ushort | unchecked | using | unsafe | virtual | void |
null | object | operator | out | out (generic modifier) | override | params |
default | delegate | do | double | else | enum | event |
sealed | short | sizeof | stackalloc | static | string | struct |
switch | this | throw | true | try | typeof | uint |
abstract | base | as | bool | break | catch | case |
volatile | while | - | - | - | - | - |
其中有几个比较容易弄错的
关键字 描 述
abstract 可以和类、方法、属性、索引器及事件一起使用,
标识一个可以扩展但不能被实体化的、必须被实现的类或方法。
as 一个转换操作符,如果转换失败,就返回null。
base 用于访问被派生类或构造中的同名成员隐藏的基类成员。
catch 定义一个代码块,在特定类型异常抛出时,执行块内代码。
参见try和finally。
checked 既是操作符又是语句。
确保编译器运行时,检查整数类型操作或转换时出现的溢出。
const 标识一个可在编译时计算出来的变量值,即一经指派不可修改的值。
delegate 指定一个声明为一种委托类型。委托把方法封装为可调用实体,
能在委托实体中调用。
enum 表示一个已命名常量群集的值类型。
event 允许一个类或对象提供通知的成员,他必须是委托类型。
explicit 一个定义用户自定义转换操作符的操作符,
通常用来将内建类型转换为用户定义类型或反向操作。
必须再转换时调用显示转换操作符。
extern 标识一个将在外部(通常不是c#语言)实现的方法。
finally 定义一个代码块,在程序控制离开try代码快后执行。参见try和catch。
fixed 在一个代码块执行时,在固定内存位置为一个变量指派一个指针。
foreach 用于遍历一个群集的元素。
goto 一个跳转语句,将程序执行重定向到一个标签语句。
implicit 一个操作符,定义一个用户定义的转换操作符。
通常用来将预定义类型转换为用户定义类型或反向操作。
隐式转换操作符必须在转换时使用。
interface 将一个声明指定为接口类型,即实现类或构造必须遵循的合同。
internal 一个访问修饰符。
namespace 定义一个逻辑组的类型和命名空间。
operator 用来声明或多载一个操作符。
out 标识一个参数值会受影响的参数,但在传入方法时,
该参数无需先初始化。
params 声明一个参数数组。如果使用,必须修改指定的最后一个参数。
允许可选参数。
readonly 标识一个变量的值在初始化后不可修改。
ref 标识一个参数值可能会受影响的参数。
sealed 防止类型被派生,防止方法和property被覆载。
sizeof 一个操作符,以byte为单位返回一个值类型的长度。
stackalloc 返回在堆上分配的一个内存块的指针。
struct struct是一种值类型,可以声明常量、字段、方法、property、
索引器、操作符、构造器和内嵌类型。
throw 抛出一个异常。
try 异常处理代码块的组成部分之一。try代码块包括可能会
抛出异常的代码。参阅catch和finally关键字。
typeof 一个操作符,返回传入参数的类型。
unchecked 禁止溢出检查。
unsafe 标注包含指针操作的代码块、方法或类。
using 当用于命名空间时,using关键字允许访问该命名空间中的类型,
而无需指定其全名。也用于定义finalization操作的范围。
virtual 一个方法修饰符,标识可被覆载的方法。
volatile 标识一个可被操作系统、某些硬件设备或并发线程修改的attribute。
猜你喜欢
- 2024-11-12 C#-练习题 014(c#程序题及答案)
- 2024-11-12 C# 类型转换(c类型转换有哪三种形式)
- 2024-11-12 C#-无参数有返回值的方法 060(有参无返回值 c语言)
- 2024-11-12 C#中的值类型和引用类型(c# 引用类型)
- 2024-11-12 abelkhan中的rpc框架(rpc框架应用场景)
- 2024-11-12 C#编程零基础到入门学习-C# 值类型和引用类型(4-8)
- 2024-11-12 2.6 C#的常用关键字和预定义类型(c#预留关键字)
- 2024-11-12 C#_图片拖拽(c#窗体图片移动)
- 2024-11-12 数据类型 - C#入门教程(c#常见数据类型)
- 2024-11-12 C#中堆栈(Stack)和堆(Heap)的区别——第一部分
- 1507℃桌面软件开发新体验!用 Blazor Hybrid 打造简洁高效的视频处理工具
- 505℃Dify工具使用全场景:dify-sandbox沙盒的原理(源码篇·第2期)
- 484℃MySQL service启动脚本浅析(r12笔记第59天)
- 465℃服务器异常重启,导致mysql启动失败,问题解决过程记录
- 462℃启用MySQL查询缓存(mysql8.0查询缓存)
- 442℃「赵强老师」MySQL的闪回(赵强iso是哪个大学毕业的)
- 422℃mysql服务怎么启动和关闭?(mysql服务怎么启动和关闭)
- 418℃MySQL server PID file could not be found!失败
- 最近发表
-
- netty系列之:搭建HTTP上传文件服务器
- 让deepseek教我将deepseek接入word
- 前端大文件分片上传断点续传(前端大文件分片上传断点续传怎么操作)
- POST 为什么会发送两次请求?(post+为什么会发送两次请求?怎么回答)
- Jmeter之HTTP请求与响应(jmeter运行http请求没反应)
- WAF-Bypass之SQL注入绕过思路总结
- 用户疯狂点击上传按钮,如何确保只有一个上传任务在执行?
- 二 计算机网络 前端学习 物理层 链路层 网络层 传输层 应用层 HTTP
- HTTP请求的完全过程(http请求的基本过程)
- dart系列之:浏览器中的舞者,用dart发送HTTP请求
- 标签列表
-
- c++中::是什么意思 (83)
- 标签用于 (65)
- 主键只能有一个吗 (66)
- c#console.writeline不显示 (75)
- pythoncase语句 (81)
- es6includes (73)
- windowsscripthost (67)
- apt-getinstall-y (86)
- node_modules怎么生成 (76)
- chromepost (65)
- c++int转char (75)
- static函数和普通函数 (76)
- el-date-picker开始日期早于结束日期 (70)
- js判断是否是json字符串 (67)
- checkout-b (67)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- & (66)
- java (73)
- js数组插入 (83)
- linux删除一个文件夹 (65)
- mac安装java (72)
- eacces (67)
- 查看mysql是否启动 (70)
- 无效的列索引 (74)