基本情報暗記無料で始める

インスタンスとは?いんすたんす

インスタンスは、クラス(データと手続をまとめた設計図)をもとに作られた、実際に値を持つ実体。1つのクラスから複数のインスタンスを作ることができ、どのインスタンスも同じメンバ変数とメソッドを持つが、メンバ変数に入る値はインスタンスごとに独立している。科目Bの擬似言語では、変数にインスタンスそのものではなく「インスタンスの参照」(そのインスタンスがどこにあるかを指す値)が入る書き方が多く、同じ参照を2つの変数に代入すると、両方が同じ1つのインスタンスを指す。UMLの図では、クラスの具体的な1件をインスタンスと呼び、関連の多重度(相手1件に対していくつ対応するか)もインスタンスの数で数える。

最終更新:2026-10-10

試験情報

基本情報技術者試験の過去問では2回出題され、ほかに4問の解説で触れられています(2017年度〜2025年度)。

基本情報技術者試験の頻出用語/テクノロジ系

別名:インスタンス化

この語が出る過去問を解く →

背景

設計図(クラス)だけでは値を入れられず、プログラムは動かない。同じ形のデータを何件も扱う場面(学生名簿の一人ひとり、リストの一つひとつの要素)では、設計図から必要な数だけ実体を作る仕組みが要る。クラスと実体を言葉の上で分けておくことで、「形の定義」と「個々の値」を混同せずに設計できるようになった。

具体例

fe-2022s-kamokuB-10 では、ListElement 型の変数にクラス ListElement のインスタンスの参照が入り、各インスタンスのメンバ変数 next が次のインスタンスを指すことで単方向リストがつながる。スマホのゲームでいえば、「敵キャラ」クラスから作られたスライム1体・スライム2体が別々のインスタンスで、片方の体力を減らしてももう片方の体力は変わらない。

試験での引っ掛け

科目Bでは「参照の代入」と「インスタンスの複製」の取り違えが狙われる。変数 a の参照を変数 b に代入しても新しいインスタンスはできず、b を通してメンバ変数を書き換えると a から見た値も変わる。また、カプセル化(データと手続をまとめて中身を隠すこと)や抽象化を問う問題で、「クラスから生成された実体」という説明はインスタンスの説明であって、それらの説明ではない(fe-2022s-kamokuA-38)。

関連用語

出た過去問

問題文で直接問われたものと、解説の中で触れられたものが含まれます。

解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。

この語が出る過去問を解く →

試験での特徴
  • 試験では2回出題(2017年度〜2025年度)
  • 分野:テクノロジ系
  • 科目Bでは「参照の代入」と「インスタンスの複製」の取り違えが狙われる。