匿名内部クラス
日々のプログラミングで匿名内部クラスが使用されることが多いです。そのようなものとして
ArrayList<String> list=new ArrayList<>();
list.add(new String("Hello World!"));
ラムダは、新機能のJava 8です。プロセス流の流れとJava8、特に便利
//list.foreach
ArrayList<String> list=new ArrayList<>();
list.add("Hello");
list.add("World");
list.foreach(o->{
System.out.println(o);
});
//stream
list.stream().foreach(o->{
System.out.println(o);
});
Javaインターフェースの機能は、ラムダの準備でもあり、このような単純なことを表現するために使用します。
- 関数
- 消費者
- 述語
- サプライヤーは、
これらの共通関数インタフェースは、ストリームの流れでの使用をたくさん持っている、それはまだ非常に便利です。
個人的な感情
私は匿名の内部クラスにほぼ等しく、ラムダ感じます。違いがあります。
匿名内部クラスは、このような私有財産上のように、クラスのすべての特性を持っている、あなたは法か何かを上書きすることができ、クラスです。
ラムダは、継承を書き換える必要があるインターフェイスされており、何のプライベート変数は、最終的にはまだ、ラムダ必要な関数インタフェースが複数ある場合、他はデフォルトにする必要があり、1つの方法だけを持って、あり得ません