【Aモデル録 フェーズ1 C#基礎】
~ class の中にある「中身」の正体 ~
👉 メンバーとは、「class の中に定義されている要素の総称」です。
要素、というのは:
など。
「何ができるクラスか」「何を持てるクラスか」
を決めている中身全部を、まとめて メンバー と呼びます。
ここが重要です。
class の中には、
でも、これを毎回
「クラスの中に書いてある変数やメソッド」
と全部言うのは、長い。
そこで C# は、
「クラスの中身」をまとめて呼ぶ言葉
を用意しました。
それが メンバー。
👉 技術的な新要素ではなく、整理用の言葉です。
class のメンバーは、
生まれ方が2種類あります。
👉 オブジェクトが生まれて、初めて使えるメンバー
class Dog
{
public void Bark() { }
}Dog d = new Dog();
d.Bark();
👉 オブジェクトごとに存在する
これが、
インスタンスメンバー。
👉 オブジェクトが無くても使えるメンバー
class Dog
{
public static void Explain() { }
}Dog.Explain();
👉 クラスそのものに属している
これが、
static メンバー。
「同じ class の中にあるのに、
なんで扱いが違うの?」
👉 その違和感は正解です。
理由はこれ。
| 種類 | 所属しているもの |
|---|---|
| インスタンスメンバー | オブジェクト |
| static メンバー | クラス |
👉 役割で分けられている
「オブジェクト」の解説回で出てきた、あの事実。
プログラム開始時、オブジェクトはまだ存在しない
なのに、
Main()
は呼ばれる。
👉 だから Main は static。
これは、
ではありません。
👉 メンバーの所属ルールに従った、必然的な設計。
❌ static = 便利な裏技
❌ インスタンス = 普通
→ 違う
どちらも、
この回は、
static を正しく普通にする回
です。
ここを通ると、