Javaにおけるコンストラクター(constructor)とは、クラスのインスタンス(オブジェクト)を生成する際に自動的に呼び出される特別なメソッドであり、主にオブジェクトの初期化を目的としています。
コンストラクターの特徴
-
クラス名と同じ名前を持つ
-
メソッド名ではなく、クラス名と同名で定義します。
-
-
戻り値がない
-
voidすら記述しません。戻り値の型を指定しない点が通常のメソッドと異なります。
-
-
オーバーロードが可能
-
引数の数や型が異なる複数のコンストラクターを定義できます。
-
-
自動的に呼び出される
-
new演算子によってオブジェクトが生成されるときに呼び出されます。
-
コンストラクターの例
この例では、Person クラスに以下の2つのコンストラクターがあります:
-
引数なしのコンストラクター:初期値を設定
-
引数ありのコンストラクター:外部から値を受け取って初期化
コンストラクターの呼び出し例
デフォルトコンストラクター
-
明示的にコンストラクターを定義しない場合、Javaコンパイラが自動的に引数なしのコンストラクターを追加します。
-
しかし、**引数ありのコンストラクターを定義すると、デフォルトコンストラクターは自動生成されません。**必要であれば明示的に定義する必要があります。
this() と super()
this() と super()-
this():同じクラス内の他のコンストラクターを呼び出す -
super():親クラスのコンストラクターを呼び出す
まとめ
| 項目 | 説明 |
|---|---|
| 名前 | クラス名と同じ |
| 戻り値 | なし(voidも書かない) |
| 自動呼び出し | new によって自動実行 |
| オーバーロード | 可能 |
| 初期化目的 | オブジェクトのフィールドを設定するために使用される |
生成日:2025/05/03