無名内部クラス(匿名クラス)について

無名内部クラス(匿名クラス)とは、宣言時にクラス名を指定しないインナークラスのこと。
書式は以下。

new スーパークラス名() { ...... };

これは、スーパークラスを継承した無名内部クラスの定義とインスタンス生成を同時に行っている。
よって、スーパークラスにはインタフェースや抽象クラスも指定できる。
注意点としては、無名内部クラスにはコンストラクタを定義できない点。
理由は無名内部クラスは一時的なクラスであり、クラス名をもたないため、
「クラス名と同名であること」というコンストラクタの宣言ルールを満たせないから。
よって初期化したい場合はイニシャライザ(初期化子)を使う。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です