static初期化ブロック
そういや,そんなものもありました.
staticフィールドの初期化に計算が必要で,後で変更する必要がない場合に使える.何かとMapで持っておきたいフィールドってあるよね.
import java.util.*; class StaticInitialize { private final static Map<String, String> m = new HashMap<String, String>(); static { m.put("key1", "value1"); m.put("hello", "world"); m.put("foo", "bar"); } public static void main(String[] args) { System.out.println(m); } }
$ java StaticInitialize {hello=world, key1=value1, foo=bar}