Java における関数オブジェクト
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/10/03 01:18 UTC 版)
「関数オブジェクト」の記事における「Java における関数オブジェクト」の解説
Javaでは関数が第一級オブジェクトでないため、関数オブジェクトの代わりとして、一つのメソッドを持つインタフェースが使われる。代表的なインタフェースとしては、run()メソッドを持つjava.lang.Runnableが挙げられる。実際のコーディングにおいては、そのようなインタフェースを実装するクラスの定義には、内部クラス (inner class) や、メソッド内の変数をキャプチャしてクロージャのように振る舞うことのできるローカルクラス (local class) あるいは匿名クラス (anonymous class) がしばしば使われる。 Javaの標準ライブラリの例では、java.util.Collections.sort() はリストと、意味的には関数を引数にとる。この関数はリスト内のオブジェクトを比較する役割を持つ。しかし、Javaは関数が第一級オブジェクトでないため、java.util.Comparatorインタフェースを実装したオブジェクトを渡す。下記の例のように使用する: List
※この「Java における関数オブジェクト」の解説は、「関数オブジェクト」の解説の一部です。
「Java における関数オブジェクト」を含む「関数オブジェクト」の記事については、「関数オブジェクト」の概要を参照ください。
- Java における関数オブジェクトのページへのリンク