オブジェクト指向の考え方

プログラミングの世界では、現実のものごとをわかりやすく整理して表すために「オブジェクト指向(Object Oiented)」という考え方を使います。

オブジェクト指向は、一見難しく感じますが、実は身近なものを例にするととてもわかりやすいんです。

今回は、歴史で有名な「徳川家康」を例にして、「クラス」と「インスタンス(オブジェクト)」 の違いと役割を説明してみましょう。です。


【オブジェクト指向の考え方】

■ 1. まず「クラス」とは?

  • クラスとは、共通の性質やふるまいをまとめた「設計図」のことです。
  • 例えば「人間」というクラスを作ると、「名前がある」「年齢がある」「歩くことができる」といった共通の性質をまとめて表せます。

■ 2. 「インスタンス」とは?

  • クラスという設計図をもとにして、実際に使える形にしたものが インスタンス(実体)です。
  • 「人間」というクラスから「徳川家康」という実際の人を作ったら、それがインスタンスです。

■ 3. 「オブジェクト」とは?

  • オブジェクトは「インスタンス」とほぼ同じ意味で使われます。
  • 「属性(名前や年齢などのデータ)」と「メソッド(歩く、食べるなどの動作)」を持つまとまりのことです。

【まとめ図】

用語説明
クラス人間設計図(共通の性質と動き)
インスタンス(オブジェクト)徳川家康設計図から作られた実物

【イメージをふくらませる例】

  • 「犬」というクラス → 「ポチ」というインスタンス
  • 「車」というクラス → 「赤いプリウス」というインスタンス
  • 「ゲームキャラクター」というクラス → 「勇者アレックス」というインスタンス

【ポイント】

  • クラスはあくまで共通のルールや設計図。
  • 実際にプログラムの中で使われるのは「インスタンス(オブジェクト)」です。
  • 1つのクラスから何個でもインスタンスを作れます。
    • 例:家康、秀吉、信長、みんな「人間」クラスから作れる。

【初心者向けの一言】

「クラスは説明書、インスタンスは完成したモノ」

このイメージでOKです!

【C# サンプルコード】

using System;

namespace ObjectOrientedSample
{
    // 「人間クラス」の定義(設計図)
    class Human
    {
        // フィールド(属性)
        public string Name;
        public int Age;

        // メソッド(ふるまい)
        public void Walk()
        {
            Console.WriteLine($"{Name} が歩いています。");
        }
    }

    class Program
    {
        static void Main(string[] args)
        {
            // 「徳川家康」というインスタンスを作る
            Human ieyasu = new Human();

            // 属性を設定する
            ieyasu.Name = "徳川家康";
            ieyasu.Age = 75;

            // 属性を表示する
            Console.WriteLine($"名前: {ieyasu.Name}");
            Console.WriteLine($"年齢: {ieyasu.Age}");

            // ふるまい(メソッド)を実行する
            ieyasu.Walk();
        }
    }
}

【ポイント解説】

✅ クラスの定義

class Human
{
    public string Name;
    public int Age;

    public void Walk() { ... }
}
  • Human がクラス(設計図)。
  • Name と Age が属性。
  • Walk がふるまい(メソッド)。

✅ インスタンスの生成

Human ieyasu = new Human();
  • new を使ってクラスから実体(オブジェクト)を作ります。
  • ieyasu が「徳川家康」のインスタンス。

✅ 属性をセットして使う

ieyasu.Name = "徳川家康";
ieyasu.Age = 75;

✅ メソッドを実行する

ieyasu.Walk();
  • 設計図にある「歩く」を、家康が実際に行います。

【超まとめ】

  • クラス = Human(人間)
  • インスタンス = ieyasu(徳川家康)
  • 属性とふるまいで表現する

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