finalとは
一度変数に設定した値を、後から変更されないようにするためにはfinal修飾子を使用します。
final修飾子は、主に値を変更する予定がない定数などの値を設定する時に使用します。
例えば、変数に対して以下のようにfinal修飾子を指定すれば、その変数の変更ができなくなります。
final class クラス名 {
//処理
}
final修飾子は変数以外にもクラスやメソッドも、内容を変更されたくない時に使用する事もできます。
クラスをfinal指定するときには、以下の記述します。
final class クラス名 {
//処理
}
finalとは決めたものを変更できなくすること
finalの機能は(決めた事を変更できなくする)事をプログラマーが指定するものです。
finalは、同じキーワードを変数とクラス メソッドに指定でき、以下のようにそれぞれ意味が違う、
同じキーワードですが文脈により意味が違うので少しややこしい。
1 変数へのfinal 変数へ値を再代入をできなくする
2 クラスへのfinal クラスを継承できなくする
3 メソッドへのfinal メソッドをオーバーライドできなくする