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

コンストラクタとは?こんすとらくた

コンストラクタとは、クラス(データと処理をまとめた設計図)から実物のオブジェクト(インスタンス)を生成するときに呼び出され、そのインスタンスの初期状態を整える特別な手続。クラスと同じ名前で書き、メンバ変数(インスタンスがもつ変数)に最初の値を入れるのが主な役目。生成のときに1回だけ呼ばれる点と、生成したインスタンスそのものが結果になる点で、通常のメソッド(インスタンスに対して何度でも呼べる手続)と区別する。引数の違う複数のコンストラクタを用意できる言語もある。

最終更新:2026-10-10

試験情報

基本情報技術者試験の過去問では1回出題されています。

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

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

背景

インスタンスを作った直後にメンバ変数へ値を入れ忘れると、空のまま使われて誤動作する。作る瞬間に必ず初期化の処理が走る仕組みにしておけば、使う側が手順を覚えていなくても、正しい初期状態のインスタンスだけが出回るようにできる。

具体例

科目Bの fe-2022s-kamokuB-8 では、クラス PrioQueue の説明に「コンストラクタ PrioQueue():空の優先度付きキューを生成する」とあり、続いて「メソッド enqueue(文字列型: s, 整数型: prio):要素を追加する」などが並ぶ。プログラムはまず PrioQueue() で空のキューを1つ作り、その後 enqueue で中身を足していく。コンストラクタは「箱を作る」、メソッドは「作った箱を操作する」と読み分けるとトレース(変数の値の追跡)がしやすい。

試験での引っ掛け

コンストラクタを、作ったインスタンスに何度も呼べる普通のメソッドと混同しない。コンストラクタは生成時に1回だけ動き、戻り値の型を書かない(結果は生成されたインスタンス)。科目Bのクラスの説明表では、コンストラクタの行とメソッドの行が分けて書かれるので、どちらの行かを先に確かめる。また、コンストラクタを呼ぶたびに別のインスタンスができ、前に作ったものの中身は引き継がれない。

関連用語

出た過去問

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

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

試験での特徴
  • 試験では1回出題
  • 分野:テクノロジ系
  • コンストラクタを、作ったインスタンスに何度も呼べる普通のメソッドと混同しない。