【Aモデル録 フェーズ1 C#基礎】
👉 フィールドとは、「そのクラスのインスタンスが、常に保持している情報」 です。
固定で置いておく
共有ではなく「その枠専用」
仕事中ずっと使われる
これがフィールド。
👉 情報は、「インスタンスに保存される」という認識が、とても重要!
| 種類 | 宣言書式 | 例 | 命名規則 | 覚え方 |
|---|---|---|---|---|
| フィールド | private 型 _名前; | private string _title; | _camelCase | 内緒だから頭に _ |
製造部(インスタンス)
├ 部署名
└ 生産目標数
👉 部署が存在する限り、ずっと持っている情報
👉 誰かが来たら一時的に使うものではない
これがフィールド。
class SeizoBu
{
public string DepartmentName;
public int TargetNumber;
}
ここでのポイント:
DepartmentName
TargetNumber
👉 これがフィールド
これは重要。
👉 クラスの中
👉 メソッドの外
class SeizoBu
{
// ← ここがフィールド
public string DepartmentName;
public int TargetNumber;
// ← ここはメソッド
public void ShowInfo()
{
//ここはメソッドのマニュアル
}
}
フィールド:
👉 部署そのものが持つ情報
メソッド:
👉 仕事の手順・作業マニュアル
役割が違うから、場所も違う。
static void Main()
{
SeizoBu seizoBu1 = new SeizoBu();
seizoBu1.DepartmentName = "製造部1課";
seizoBu1.TargetNumber = 1000;
}
ここで起きていること:
Mainで部署を作る(インスタンス生成)
その部署のフィールドに値を入れる
Mainは指令を出している
情報は部署側(インスタンス)に保存される
👉この、 情報は「クラス」の「インスタンス」に保存、という認識が、とても重要!
👉 Mainは「司令塔」
👉 実データは「各部署の中」
クラスの中
ずっと存在
枠のインスタンスが覚えている
public void Work()
{
int todayNumber = 100;
}
メソッドの中だけ
仕事が終わったら消える
一時的なメモ
👉 備品 vs 作業中のメモ書き
クラス
👉 枠の定義
インスタンス
👉 実稼働する枠の実体
フィールド
👉 枠のインスタンスが常に持っている情報
メソッド
👉 枠内で担当する仕事のマニュアル
「フィールドは、インスタンスに紐づく“状態”」
「Mainに置くものではない」
これが腑に落ちていれば、完璧です。
次、自然につながるのは
👉 コンストラクタ(配属時に何を持たせるか)
この流れ、かなり美しいですよ。