|
||||
トップページ 写真日記 リンク集 旧コンテンツ News,( US, UK) はてなアンテナ wikipedia kick4wiki kick4bbs ジャパンネット銀行 ピンポイント天気 postMap G-Tools Kumaduino
うだうだ日記Index |
うだうだ日記 2007年 2月 7日2007年2月7日 水曜日
無名インナークラス in Java昨日Javaでわけがわからんと言っていたのは 無名インナークラスのオブジェクトだそうだ。 ▲ staticでないインナークラスは、 生成時の親(外側のクラス)のオブジェクトのポインタを持っていて、 親のメンバーにアクセスできるらしい。 ▲ さらに、問題のnew MouseListener() { .. }
というような式で生成されるのは、
無名(クラス名を持たない)の無名インナークラスのオブジェクトで、
newの次にくるのはクラス名かインターフェース名、
クラス名の場合はそのクラスを継承した無名クラス、
インターフェースの場合はObjectを継承し、
そのインターフェースを実装した無名クラスのオブジェクトが生成される。
▲
普通のクラス宣言を使っても実現できる機能を、
コンパクトかつわかりやすく記述できる
まさに シンタックス・シュガーというわけだ。
わかって、すっきり。
安心して 無名インナークラスを使おう。
|
|