Понимание ключевых слов и идентификаторов C#: правила, списки и лучшие практики
Ключевые слова и идентификаторы C#
Освойте фундаменты ключевых слов и идентификаторов C#, строительных блоков, определяющих структуру и поведение вашего кода.
Ключевые слова C#
Ключевые слова — предопределённые слова, которые C# компилятор резервирует для собственного использования. Их значение фиксировано; они не могут быть изменены или использованы напрямую как идентификаторы.
Например:
long mobileNum;
Здесь long — ключевое слово, объявляющее переменную типа long с именем mobileNum. Ключевые слова вроде int, char, long не могут использоваться как имена переменных без модификации.
Попытки использовать ключевое слово как идентификатор, вроде long long;, вызовут ошибку компиляции. C# содержит 79 зарезервированных ключевых слов, все в нижнем регистре. Ниже полный список:
| abstract | as | base | bool |
| break | byte | case | catch |
| char | checked | class | const |
| continue | decimal | default | delegate |
| do | double | else | enum |
| event | explicit | extern | false |
| finally | fixed | float | for |
| foreach | goto | if | implicit |
| in | in (generic modifier) | int | interface |
| internal | is | lock | long |
| namespace | new | null | object |
| operator | out | out (generic modifier) | override |
| params | private | protected | public |
| readonly | ref | return | sbyte |
| sealed | short | sizeof | stackalloc |
| static | string | struct | switch |
| this | throw | true | try |
| typeof | uint | ulong | unchecked |
| unsafe | ushort | using | using static |
| void | volatile | while |
Ключевые слова могут использоваться как идентификаторы с префиксом @:
int @void;
Это объявляет int переменную с именем @void.
Контекстные ключевые слова
Помимо зарезервированных ключевых слов, C# определяет 25 контекстных ключевых слов. Эти слова приобретают специальное значение только в специфических контекстах и иначе могут служить обычными идентификаторами.
| add | alias | ascending |
| async | await | descending |
| dynamic | from | get |
| global | group | into |
| join | let | orderby |
| partial (type) | partial (method) | remove |
| select | set | value |
| var | when (filter condition) | where (generic type constraint) |
| yield |
Для глубокого погружения в каждое ключевое слово консультируйтесь с официальной документацией: C# Keywords.
Идентификаторы C#
Идентификаторы дают имена переменным, методам, классам и другим элементам программы. Они уникально отличают каждый элемент в области видимости.
Пример:
int value;
Здесь value — идентификатор. Попытка использовать зарезервированное ключевое слово без префикса @, вроде int break;, вызовет ошибку компиляции.
Узнайте больше о переменных в C# Variables.
Правила именования идентификатора
- Не может быть ключевым словом C#.
- Должен начинаться с буквы, подчёркивания (
_) или символа@; последующие символы могут быть буквами, цифрами или подчёркиваниями. - Пробелы и другие символы (например,
$) запрещены. - Идентификаторы чувствительны к регистру: getName, GetName и getname — различны.
Валидные vs невалидные идентификаторы:
| Идентификатор | Примечание |
|---|---|
| number | Валидно |
| calculateMarks | Валидно |
| hello$ | Невалидно (содержит $) |
| name1 | Валидно |
| @if | Валидно (ключевое слово с @) |
| if | Невалидно (C# ключевое слово) |
| My name | Невалидно (пробел) |
| _hello_hi | Валидно |
Пример: Извлечение ключевых слов и идентификаторов из программы
Рассмотрим простую программу Hello World для идентификации её ключевых слов и идентификаторов.
using System;
namespace HelloWorld
{
class Hello
{
static void Main(string[] args)
{
Console.WriteLine("Hello World!");
}
}
}
Пары ключевое слово — идентификатор в этом фрагменте:
| Ключевое слово | Идентификатор |
|---|---|
| using | System |
| namespace | HelloWorld |
| class | Hello |
| static | Main |
| void | args |
| string | Console |
| WriteLine |
Строковый литерал "Hello World!" передаётся в WriteLine.
Язык C
- Освоение приоритета и ассоциативности операторов в C#: практическое руководство
- Циклы while и do-while в C#: синтаксис, примеры и лучшие практики
- Освоение директив препроцессора C#: практическое руководство
- Освоение переменных, литералов и констант в C++: подробное руководство
- Ключевые слова и идентификаторы в C: практическое руководство
- Ключевые слова и идентификаторы в Python: мастерство зарезервированных слов и соглашений об именовании
- Константы и литералы в C: целочисленные, вещественные, символьные, строковые и определение констант
- Константы и литералы в C#: типы, правила и лучшие практики
- Термография: как инфракрасное изображения обнаружение температурных вариаций
- Использование дополненной реальности для эффективных операций обслуживания