menu
書いてる野郎
orebike@gmail.com
クラスの初期化時に呼ばれる特殊なメソッド
まず前提として 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; }