★★Java質問・相談スレッド150★★
■ このスレッドは過去ログ倉庫に格納されています
0123デフォルトの名無しさん
2011/12/29(木) 08:17:02.75ラムダ計算がわからないのかそれとも匿名クラス見たことないのか判断しかねるがやってることは
ただの高階関数でjavaは関数が第一級じゃないからそのままじゃ渡せないんだよ。
java的にはローカルクラス宣言が必要ないときに匿名クラスにするだけでクロージャや高階関数のためにあるもんじゃないけど。
new FilenameFilter(){から次に出てくる};までが一つの式でこれが匿名クラスの定義とnewを同時にやるインスタンス生成式の1種。
retrun文はretrun 式って構文だから無名のFilenameFilterサブクラスのインスタンスを返してる。
javaはクラスがネストできるからクラスのメンバかどうかと名前があるかどうかでクラスが複数あるから言語仕様見たほうが早いと思う。
どうやって限定されるか知らないとアクセス出来ないし。
ttp://www.y-adagio.com/public/standards/tr_javalang2/jTOC.doc.html
■ このスレッドは過去ログ倉庫に格納されています