Tbpgr Blog

元エンジニア 人事 tbpgr(てぃーびー) のブログ

書籍 パーフェクトJava | final変数

パンくず

書籍 パーフェクトJava
final変数

概要

Javaのfinal変数について

Javaのfinal変数型

finalは再代入禁止を意味します。
注意すべき点としては、変数の参照は変更不可能ですが
参照しているオブジェクトの値を変更することは可能だということです。

サンプルコード

package perfect.variable;

public class Perfect4_5_1 {
  static final Perfect4_1_5_sub SAMPLE = new Perfect4_1_5_sub("hoge");
  /**
   * @param args
   */
  public static void main(String[] args) {
    System.out.println(SAMPLE); // 出力:hoge
    SAMPLE.name = "hige";
    System.out.println(SAMPLE);// 出力:hige
    // SAMPLE = new Perfect4_1_5_sub("hage"); => 再代入は不可能
  }
}
package perfect.variable;

public class Perfect4_1_5_sub {
  public String name = "";
  public Perfect4_1_5_sub(String name) {
    this.name = name;
  }

  public String toString() {
    return this.name;
  }
}