継承とコンストラクタ vol.46

今回は継承した時コンストラクタはどうなるのかについて説明していこう。

コンストラクタはこちらを参照していただきたい。

継承についてはこちら。

今回は継承した時にコンストラクタは使えるのか使えないのか。
使えたとして親クラスと子クラスではどちらが先に実行されるのかについて注目していただきたい。

1.コンストラクタも継承されるのか

結論から言おう。

コンストラクタも継承される。

コンストラクタがどのようなものかについては上記のコンストラクタとはを見ていただきたい。

では、どういった順番となるのか。

2.コンストラクタの実行順

例を出してみていこう。

まず親クラスにコンストラクタを記述しよう。

public CelloPhone()がコンストラクタだ。

画像1

次に子クラスのコンストラクタ。

画像2

public Iphone()がコンストラクタ

Mainクラスで継承した子クラスIphoneクラスをnewしてどちらのコンストラクタが先に実行されているか確認してみよう。

画像3

先に表示されたのは、親クラスのコンストラクタ。

親クラスのコンストラクタの方が先にこんすとらくたとしてじっこうされることがわかった。

Javaのルールとして、コンストラクタでは親クラスのコンストラクタを先に持ってこなくてはいけないというルールがある。

今回は短いが以上とする。

次回はこの続きである。

スーパーコンストラクタについて、
super();

このようなものについて説明していこうと思う。

では、また次回
元体育会系文系エンジニア石黒

この記事が気に入ったらサポートをしてみませんか?