プログラミングの世界で「クラス」と一緒に登場する「インスタンス」
オブジェクト指向で登場する概念の一つで、インスタンスを一言で表すと「クラスに基づいて生成された実体」と表現されることが多いです。
しかし、その意味や使い方は初めての人にとっては少し難しいと思うかもしれません。
クラスは、プログラムを組む際の設計の手間やコード記述の手間を簡略化することができる設計図の役割を持っていますが、その設計図に基づいてコードを活かすカギとなるのがインスタンスになります。
インスタンスを理解する上でクラスの理解は重要なので、理解できてるか不安だなって方は、先に下記リンクから読むことをオススメするよ!
インスタンスとは?
冒頭でも簡単に述べましたが、設計図(クラス)に基づいて生成された「実体」をインスタンスと呼びます。
言葉だけで聞いても、学び初めの方は聞き慣れないですよね。実は、この記事を見ているであろう貴方や、見るために使用しているPC・スマホも現実世界の「インスタンス」と呼べるのです。
ここでは、コンピュータの部品をインスタンスに例えて説明して行きます。
コンピュータの部品とインスタンス
まず初めに、インスタンスを生成するための設計図「クラス」の特徴は、属性(プロパティ)と機能(メソッド)の2つの要素を持っています。
▼ クラスのメンバ
そこで、コンピュータの部品であるCPUをクラスと例えた場合、下記の図解になります。
▼ CPUクラスのイメージ図
クラスの状態のままでは、このCPUクラスが「どのCPUを指しているのか」が識別できません。そこで次に、クラスの属性(プロパティ)「メーカ」「シリーズの世代」「コア数」に、「Intel」「第13世代」「14コア」と値を設定するとします。
▼ クラスの属性(プロパティ)に値を設定したイメージ図
クラスの属性に値を設定することにより、どのCPUを指しているのか識別できるようになりました。
このようにクラスから生成された「実体(オブジェクト)」を、インスタンスと呼びます。
クラスから生成されたインスタンスは、一つだけとは限らないよ!
例えば、メーカを「AMD」にすればAMD製のCPUも実体化できるね!
クラスからインスタンスを生成(実体化)することを「インスタンス化」と言います。
インスタンス化の方法や活用方法については、実際のコードで学んだ方が理解できるので下記リンクを参考にして頂ければ幸いです。
【VB.NET/C#】クラスのインスタンス化の仕方 準備中
まとめ
- クラスの属性に値を設定(実体化)することでインスタンスが生成される
- クラスを実体化することを「インスタンス化」と言う
- インスタンスは、プログラムを構造化し保守性を向上させるための強力なツール
- クラスとインスタンスをセットで使用することでコードの再利用が可能
さいごに
最後まで一読頂き、ありがとうございます!
初心者の方にも分かりやすいよう、コンピュータの部品を例に「インスタンス」の説明をしてみましたが、いかがだったでしょうか。
もし記事が少しでも参考になったなと思ったら、応援クリックして頂けると嬉しいです🐤♡
にほんブログ村
コメント