この記事は次から転送されます:http : //m.biancheng.net/view/2807.html
クラスがC言語で定義された後、 クラスに含まれるコンテンツを判別する必要があります。クラスに含まれるコンテンツは、クラスのメンバーと呼ばれます。
クラスのメンバーには、フィールド、プロパティ、メソッドが含まれます。各クラスメンバーは、アクセス修飾子と修飾子を定義するときに指定する必要があります。
クラスには、内部とパブリックの2つの主要なアクセス修飾子があります。アクセス修飾子が省略されている場合、それは内部です。
クラスのメンバーには4つのアクセス修飾子があり、具体的な使用方法は次のとおりです。
1)公開
メンバーは任意のコードでアクセスできます。
2)プライベート
メンバーは同じクラスのコードでのみアクセスできます。クラスメンバーの前にアクセス修飾子が使用されていない場合、デフォルトはプライベートです。
3)内部
メンバーには、同じプロジェクト内のコードでのみアクセスできます。
4)保護されている
メンバーには、クラスまたは派生クラスのコードでのみアクセスできます。派生クラスは継承に関係しており、後で詳しく説明します。
フィールドの定義は、アクセス修飾子と修飾子を変数または定数の前に追加できることを除いて、前に紹介した変数と定数の定義と似ています。
通常、フィールドの変更には2つの修飾子、つまり読み取り専用(読み取り専用)と静的(静的)が使用されます。
readonlyを使用してフィールドを変更すると、フィールドの値のみを読み取ることができ、フィールドに値を割り当てることができなくなります。
staticで装飾されたフィールドは、クラス名で直接アクセスできるstaticフィールドです。
定数は静的修飾子で変更できないことに注意してください。
定義されたフィールドの構文は次のとおりです。
アクセス修飾子修飾子データ型フィールド名。
ここではアクセス修飾子と修飾子の両方を省略でき、アクセス修飾子と修飾子の位置も交換できますが、コーディング規約から、アクセス修飾子は通常修飾子の前に配置されます。また、クラスでフィールドを定義する場合、フィールド名は一意です。
[例] Testクラスで異なる修飾子を使用してフィールドを定義します。
タイトルの要件に応じて、コードは次のとおりです。
namespace code_1 { class Test { private int id; //プライベート整数フィールドIDを定義し ますpublic readonly string name; //パブリック読み取り専用文字列タイプフィールド名を 定義しますinternal static int age; //内部静的整数タイプを定義しますField age private const string major = "computer"; //プライベート文字列型定数メジャーmajor } }を定義します
上記のステートメントは、さまざまな修飾子フィールドの定義を示しています。重要なのは、これらの修飾子の使用を覚えておくことです。
クラスでフィールドが定義された後、クラスが読み込まれると、フィールドが自動的に割り当てられます。次の表に示すように、データ型が異なるフィールドのデフォルト値は異なります。
データ型 | デフォルト値 |
---|---|
整数型 | 0 |
浮動小数点 | 0 |
文字列型 | ヌル値 |
キャラクター | a |
ブール | 誤り |
その他の参照タイプ | ヌル値 |