一言でいうと

「インスタンス」とは、プログラムの設計図から実際に作られた、動いている物体のことです。設計図そのものではなく、その設計図を使って実際に作った実物のようなイメージです。

もう少し詳しく

わかりやすくするために、クッキーの例で説明します。

クッキーの作り方の本(レシピ)があったとします。この本が「クラス」という設計図です。この本を使って、実際にクッキーを焼きました。焼き上がったクッキーが「インスタンス」です。

同じレシピから何個もクッキーを焼けます。同様に、1つの設計図からたくさんのインスタンスを作ることができます。また、焼きたてのクッキーもあれば、冷めたクッキーもあります。同じように、インスタンスごとに異なる状態(データ)を持つことができるのです。

プログラムの世界でも全く同じ考え方です。設計図に書かれた機能を使って、実際に動く存在を作ります。それがインスタンスです。

よく使われる場面

エラーログサイトでは「インスタンスが起動できません」といった表現が出てきます。これは「設計図をもとに作られた、実際に動くプログラムが起動できない」という意味です。また「このインスタンスのメモリ使用量が多い」というのは「この実際に動いているプログラムが、たくさんのメモリを使っている」という意味になります。

関連する言葉

  • クラス:インスタンスの設計図
  • オブジェクト:プログラム内で扱う物体全般の呼び方
  • メソッド:インスタンスが持つ動作・機能