メンバー (C# プログラミング ガイド)Members (C# Programming Guide)

クラスと構造体には、そのデータおよび動作を表すメンバーがあります。Classes and structs have members that represent their data and behavior. クラスのメンバーには、クラスで宣言されているすべてのメンバーと、継承の階層構造のすべてのクラスで宣言されているメンバー (コンストラクターとファイナライザーを除く) が含まれます。A class's members include all the members declared in the class, along with all members (except constructors and finalizers) declared in all classes in its inheritance hierarchy. 基底クラスのプライベート メンバーは継承されますが、派生クラスからはアクセスできません。Private members in base classes are inherited but are not accessible from derived classes.

クラスまたは構造体に含まれるメンバーの種類を次の表に示します。The following table lists the kinds of members a class or struct may contain:

メンバーMember 説明Description
フィールドFields フィールドとは、クラス スコープで宣言される変数です。Fields are variables declared at class scope. フィールドは、組み込みの数値型であったり、別のクラスのインスタンスであったりします。A field may be a built-in numeric type or an instance of another class. たとえば、Calendar クラスには、現在の日付を格納するフィールドがあります。For example, a calendar class may have a field that contains the current date.
定数Constants 定数とは、コンパイル時に値が設定され、設定された値を変更できないフィールドです。Constants are fields whose value is set at compile time and cannot be changed.
プロパティProperties プロパティはクラスのメソッドで、そのクラスのフィールドのようにアクセスされます。Properties are methods on a class that are accessed as if they were fields on that class. プロパティは、クラスのフィールドを保護し、オブジェクトが認識することなくフィールドが変更されるのを防止できます。A property can provide protection for a class field to keep it from being changed without the knowledge of the object.
メソッドMethods メソッドは、クラスが実行できるアクションを定義します。Methods define the actions that a class can perform. メソッドは、入力データを提供するパラメーターを受け取り、パラメーターを通じて出力データを返すことができます。Methods can take parameters that provide input data, and can return output data through parameters. メソッドは、パラメーターを使用せずに値を直接返すこともできます。Methods can also return a value directly, without using a parameter.
イベントEvents イベントは、ボタンのクリックやメソッドの正常な終了などの発生に関する通知を他のオブジェクトに提供します。Events provide notifications about occurrences, such as button clicks or the successful completion of a method, to other objects. イベントを定義し、トリガーするには、デリゲートを使用します。Events are defined and triggered by using delegates.
演算子Operators オーバーロードされた演算子は、型のメンバーと見なされます。Overloaded operators are considered type members. 演算子をオーバーロードする場合は、演算子をパブリックな静的メソッドとして型に定義します。When you overload an operator, you define it as a public static method in a type. 詳細については、「演算子のオーバーロード」を参照してください。For more information, see Operator overloading.
インデクサーIndexers インデクサーを使用すると、配列と同じようにオブジェクトにインデックスを付けることができます。Indexers enable an object to be indexed in a manner similar to arrays.
コンストラクターConstructors コンストラクターは、オブジェクトを初めて作成するときに呼び出されるメソッドです。Constructors are methods that are called when the object is first created. コンストラクターは、一般にオブジェクトのデータを初期化するために使用します。They are often used to initialize the data of an object.
ファイナライザーFinalizers ファイナライザーが C# で使用されることはほとんどありません。Finalizers are used very rarely in C#. デストラクターは、オブジェクトがメモリから削除されるときに、ランタイム実行エンジンによって呼び出されるメソッドです。They are methods that are called by the runtime execution engine when the object is about to be removed from memory. デストラクターは、通常、解放する必要があるリソースが適切に処理されるようにするために使用します。They are generally used to make sure that any resources which must be released are handled appropriately.
入れ子にされた型Nested Types 入れ子にされた型は、別の型で宣言された型です。Nested types are types declared within another type. 入れ子にされた型は、通常、それを格納している型だけで使用されるオブジェクトを表すために使用します。Nested types are often used to describe objects that are used only by the types that contain them.

関連項目See also