「Java8」初期化ブロック(オブジェクトイニシャライザ)を使用するサンプル
環境
JavaSE1.8
Eclipse2019-12
書式
public class クラス名 { private final データの型 変数名; //初期化ブロックコード { 変数名 =値; } }
初期化ブロックの役割は用途は主に次の2つです。
すべてのコンストラクタの共通処理を記述可能です
匿名クラスの初期化に使用します
使い方
クラス名 インスタンス名 = new クラス名();
インスタンス名.変数名
使用例
package com.arkgame.study; import java.util.Date; public class StaticObjectDemo { //変数の宣言 private final Date date; private final int LEVEL; // 初期化ブロックコード { System.out.println("初期化ブロックの実行"); date = new Date(); LEVEL = 12; } /** * 日付の取得 * * @return date */ public Date getDate() { return date; } public static void main(String[] args) { // インスタンス生成 StaticObjectDemo stobj = new StaticObjectDemo(); System.out.println(stobj.getDate().toString()); System.out.println(stobj.LEVEL); } }
実行結果
初期化ブロックの実行 Thu May 12 09:28:39 JST 2022 12