【ここで混乱するのは普通です】Studentクラスで理解するオブジェクト指向

C#を学んでいると、多くの人が一度止まる場所があります。

それが

  • クラス
  • インスタンス(オブジェクト)
  • 参照(同じ実体を指す)

です。

安心してください。

ここで混乱するのは正常です。

今日は「山田さん」「山本さん」を例に、明示型(型をはっきり書く書き方)も入れて整理します。


1. クラスは「設計図」

クラスは、

「生徒」という概念の設計図

です。まだ誰も存在していません。

class Student
{
    public string Name;
    public int Age;
    public int SkillLevel;

    public void Introduce()
    {
        Console.WriteLine($"私は{Name}です。{Age}歳です。");
    }

    public void Study()
    {
        SkillLevel++;
        Console.WriteLine($"{Name}は勉強してレベルが{SkillLevel}になった!");
    }
}

この時点では「Studentという設計図」を作っただけです。


2. 明示型でインスタンスを作る(おすすめ)

ここからが重要です。

new を書いた瞬間に、設計図から「実体」が生まれます。

まずは、型が見えるように 明示型で書きます。

Student student1 = new Student();
student1.Name = "山田さん";
student1.Age = 25;
student1.SkillLevel = 1;

student1.Introduce();
student1.Study();

この1行が特に重要です。

Student student1 = new Student();

ここはこう読んでください。

  • Student :型(クラス)
  • student1 :変数(実体を入れておく箱の名前)

3. もう一人作る(独立していることを確認)

Student student2 = new Student();
student2.Name = "山本さん";
student2.Age = 30;
student2.SkillLevel = 3;

student2.Study();

ここで考えてみましょう。

student1 が勉強したら student2 のレベルも上がりますか?

答えは 上がりません

なぜなら、別々に new した 別の実体(インスタンス)だからです。


4. 図で整理する(最重要)

Student(設計図)
        ↓ new
student1(山田さんの実体)

Student(設計図)
        ↓ new
student2(山本さんの実体)
  • 設計図は1つ(Student)
  • 実体は何個でも作れる(student1, student2…)

5. var 版(型推論)も見ておく

理解が進んだら、同じことを var でも書けます。

var student3 = new Student();
student3.Name = "山田さん";

var は

右側(new Student())から型を推論している

だけです。

つまり、この2つは同じ意味です。

Student student1 = new Student();
var student1 = new Student();

6. 今はどちらで書くべき?

結論:

  • 混乱しやすい今は、明示型が安全
  • 慣れてきたら var を使えばOK

なぜ今は明示型が良いのか?

Student student1 と書くと、

「Student型の student1」

という構造が目で見て分かるからです。


7. よくある混乱ポイント(ここを潰す)

❌ クラス=山田さん ではない

正しくはこうです。

  • クラス(Student)=「生徒という概念」
  • インスタンス(student1)=「山田さんという実体」

8. 今日覚えるのは4つだけ

  1. クラスは設計図
  2. new で実体(インスタンス)ができる
  3. インスタンスは独立している
  4. var は型を省略しているだけ(意味は同じ)

まとめ

オブジェクト指向は、最初は少し抽象的で難しく感じます。

でも、ここを越えるとC#の世界が一気に広がります。

焦らず、まずは

  • 明示型で書いて型を目で見る
  • new のたびに実体が増える

この2点をしっかり掴んでいきましょう。


訪問数 3 回, 今日の訪問数 4回