Java silver 1ヶ月取得する為の勉強 7日目

Java silver 1ヶ月取得する為の勉強 7日目

・2.0時間勉強

徹底攻略Java SE 8 Silver問題集 第7章 継承の操作

勉強内容

・拡張の元になるクラスのことを基底クラスやスーパークラス
・拡張したクラスのことを派生クラスやサブクラスという


継承は、生産性を向上させる強力なプログラミング
「差分プログラミングとも呼ぶ」

 

継承で引き継げない部分
・コンストラク
・privateなフィールドやメソッド


インターフェースのルール
Finalを使って、動的に値が変更されないこと(定数)
Staticを使って、インスタンスを生成しなくても使えること


抽象クラスはインスタンス化はできない。
抽象メソッドは、具象クラスが実装しなけらばならない


オーバーロード(多重定義)は、メソッドが同じで引数が異なる「新しいメソッド」を定義すること。

オーバーライドは、サブクラスでスーパークラスに定義されたメソッドを再定義すること

 

オーバーライドの3つのルール
シグネチャが同じであること
・戻り値方は同じか、サブクラスであること
・アクセス修飾子は同じか、より緩いものを指定すること


フィールドを参照した場合は、変数で宣言された方を使う
メソッドを呼び出した場合は、メソッド内の指示に従う


ポリモーフィズムは、実際に動作しているインスタンスを、インスタンスの元になった型とは、異なる型で扱える仕組み。
ポリモーフィズムが成り立つのは、現実か継承関係しか成り立ちません。

 

インスタンスも型変換ができる


キャスト式を記述して明示的に型変換すると、コンパイルは成功する。
ただし、型同士の相互性がない場合は、実行時に例外がスローされる


Thisはインスタンス自身への参照を持っている


継承関係にあるクラスのインスタンスの生成をするときの動作

スーパークラスインスタンスが持つコンストラクタが先に実行されなけらばならない
・サブクラスのコンストラクタには、スーパークラスのコンストラクタを呼び出す「super();」が、コンパイラによって先頭行に追加される。


合計勉強時間:10.5時間