Java / 基礎 / クラス / メソッド / コンストラクタ

Java / 基礎 / クラス / メソッド / コンストラクタ

クラスの初期化時に呼ばれる特殊なメソッド

スーパークラスのコンストラクタを呼び出す

まず前提として Java ではコンストラクタは継承されない。サブはサブで実装する必要がある。 サブクラスから継承元のスーパクラスのコンストラクタを呼び出すには super キーワードを使って呼び出す。

public Hoge(int a){
    super(a);
}

注意する点としてはこのコンストラクタ内ではsuperキーワードは1行目に書かないといけないということ、この前で処理を挟むことはできない・・・

パラメータを渡す際に無理やりやっちゃうのはアリ

public Hoge(int a){
    super(a * 10);
}

自分自身の別のコンストラクタを呼び出す

Java のコンストラクタは他のメソッドと同様にオーバーロードできるので、自分自身が自分自身のコンストラクタを呼びたい状況もあるだろう。

この場合は super キーワードではなくて this キーワードを使う

public Hoge(int a){
    this.a = a;
}
public Hoge(int a, int b){
    this(a);
    this.b = b;
}
java/basic/class/method/constructor/start.txt · 最終更新: 2020-12-18 17:13 by ore