English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
C#には、コンパイラに特別な意味を持つ保留語があります。これらの保留語は「キーワード」と呼ばれます。キーワードは識別子(変数名、クラス、インターフェースなど)として使用できません。
C#のキーワードは以下のカテゴリに分類されます:
修飾語キーワードは特定のキーワードであり、誰がタイプおよびタイプメンバーを変更できるかを示します。修飾子は、プログラムの一部が他の部分によって変更されることを許可または阻止します。
修飾語キーワード | ||||||||
---|---|---|---|---|---|---|---|---|
abstract | async | const | event | extern | new | override | partial | readonly |
sealed | static | unsafe | virtual | volatile |
アクセス修飾子は、クラス、メソッド、属性、フィールド、その他のメンバーの宣言に適用されます。これらはクラスおよびそのメンバーのアクセス性を定義します。
アクセス修飾子 | 用法 |
---|---|
public | Public修飾子は、同じプログラムセットまたは別のプログラムセットのプログラムのどの部分でもタイプおよびそのメンバーにアクセスできるようにします。 |
private | Private修飾子は、プログラムの他の部分からのタイプおよびそのメンバーへのアクセスを制限します。同じクラスまたは構造内のコードのみがアクセスできます。 |
internal | Internal修飾子は、同じプログラムセット内の他のプログラムコードがタイプまたはそのメンバーにアクセスできるようにします。修飾子が指定されていない場合、これはデフォルトのアクセス修飾子です。 |
protected | protected修飾子は、同じクラスまたはその派生クラスのクラス内のコードがそのタイプまたはそのメンバーにアクセスできるようにします。 |
文キーワードはプログラムの流れに関連しています。
文キーワード | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
if | else | switch | case | do | for | foreach | in | while | break | continue | default | goto | return |
yield | throw | try | catch | finally | checked | unchecked | fixed | lock |
これらのキーワードはメソッドのパラメータに適用されます。
メソッドパラメータキーワード | ||
---|---|---|
params | ref | out |
これらのキーワードはネームスペースや関連する演算子とともに適用されます。
ネームスペースキーワード | |||
---|---|---|---|
using | .operator | ::operator | extern alias |
演算子キーワードは他の操作を実行します。
演算子キーワード | ||||
---|---|---|---|---|
as | await | is | new | sizeof |
typeof | stackalloc | checked | unchecked |
アクセスキーワードはオブジェクトやクラスの含まれるクラスや基底クラスにアクセスするために使用されます。
アクセスキーワード | |
---|---|
base | this |
リテラルキーワードはオブジェクトの現在のインスタンスや値に適用されます。
リテラルキーワード | ||||
---|---|---|---|---|
null | false | true | value | void |
タイプキーワードはデータ型に使用されます。
入力キーワード | |||||||||
---|---|---|---|---|---|---|---|---|---|
bool | byte | char | class | decimal | double | enum | float | int | long |
sbyte | short | string | struct | uint | ulong | ushort |
コンテキストキーワードは特定のコンテキストで使用される場合にのみキーワードとして認識されます。それらはリテンションキーワードではありませんので、名前や識別子として使用できます。
コンテンツ関連キーワード | |||||
---|---|---|---|---|---|
add | var | dynamic | global | set | value |
コンテキストキーワードがVisual Studioでの識別子として使用されるとき、それを青色(Visual Studioでのキーワードのデフォルト色)に変換しません。
クエリキーワードはLINQクエリで使用されるコンテキストキーワードです。
クエリキーワード | ||||||
---|---|---|---|---|---|---|
from | where | select | group | into | orderby | join |
let | in | on | equals | by | ascending | descending |
如上所述、キーワードは識別子(変数名、クラス、インターフェースなど)として使用できません。しかし、プレフィックス「@」と一緒に使用できます。例えば、このクラスはリテンションキーワードであり、そのため識別子として使用できませんが、以下のように使用できます@class。
public class @class { public static int MyProperty { get; set; } } @class.MyProperty = 100;
覚えておくべきポイント:
キーワードは予約語であり、名前や識別子として使用できません。
キーワードを識別子として使用する場合は、キーワードの前に「@」を追加してください。
C#には、修飾子キーワード、アクセス修飾子キーワード、文キーワード、メソッドパラメータキーワードなど、さまざまなカテゴリのキーワードが含まれています。
コンテキストキーワードは識別子として使用できます。