package TestLamda;//推导λ表达式publicclassTestLamda1{
//3.静态内部类staticclassLike2implementsILike{
@Overridepublicvoidlamda(){
System.out.println("I like lamda2");}}publicstaticvoidmain(String[] args){
ILike like =newLike();
like.lamda();
like =newLike2();
like.lamda();//4.局部内部类classLike3implementsILike{
@Overridepublicvoidlamda(){
System.out.println("I like lamda3");}}
like =newLike3();
like.lamda();//5.匿名内部类,没有类的名称,必须借助接口或父类
like =newILike(){
@Overridepublicvoidlamda(){
System.out.println("I like lamda4");}};
like.lamda();//6.lamda简化
like =()->{
System.out.println("I like lamda5");};
like.lamda();}}//1.定义一个函数式接口interfaceILike{
voidlamda();}//2.实现类classLikeimplementsILike{
@Overridepublicvoidlamda(){
System.out.println("I like lamda1");}}