20日目の最後です!!
Tim先生の時に、サラッと出てきた「final」です!!
finalについて、菅原先生が解説してくださいました。
【finalとは】
クラス、メンバ変数、メソッドにつけられる修飾子で、「これで最後」という意味。
【finalをつけたらどうなるの??】
クラス:継承ができなくなる
final class Student{
→ 別のクラスでextends Student とはできない
※このクラスを継承されると、辻褄が合わなくなるという場合
メンバ変数: 変数への値の代入ができなくなる。
final int BASE.NO = 1000;
→ BASE.NO = 2000は代入できない。
※変数ではなく、定数として扱われる。
定数名は、全て大文字として設定される場合が多い
メソッド:メソッドの上書き(オーバーライド)ができなくなる。
final void backup(){
→サブクラスで定義できない。
ということで、実際にコードを書いて、fainalがどう動くのかというのを学びました。
うん、理解が深まった!!
その後、演習問題!!
演習問題では、
・継承
・オーバーライド
・super、this
の理解度チェックをしました。
結構、自信満々で取り組んだのですが、自分の理解度の低さに愕然としました、、、
特に、super()の使い方、this()の使い方、どのデータがどこを参照しているのか等、、、
これは頭を冷やして明日、もう一回やらんとですね、、、
楽しんでいこう!!!
ではでは!!