lambda表达式 和 内部类

class Main {
    //3.静态内部类
    static class Ilike implements Like{
        @Override
        public void lambda(int a) {
            System.out.println("lambda--" + a );
        }
    }
    public static void main(String[] args) {
        //Like like ;
        Like like = new Ilike();
        like.lambda(1);
        like.lambda(2);
        //4.局部内部类
        class Ilike implements Like{
            @Override
            public void lambda(int a) {
                System.out.println("lambda--" + a );
            }
        }
        like = new Ilike();
        like.lambda(3);
        //5.匿名内部类,没有类的名称,必须借助接口或者父类
        like = new Like() {
            @Override
            public void lambda(int a) {
                System.out.println("lambda--" + a );
            }
        };
        like.lambda(4);
        
        //6.lambda简化
        like = (int a)->{
            System.out.println("lambda--" + a );
        };
        like.lambda(5);
        
    }
}
//1.定义一个函数式接口(只有一个方法的接口就是函数式接口)
interface Like{
    void lambda(int a);
}
//2.接口实现类
class Ilike implements Like{
    @Override
    public void lambda(int a) {
        System.out.println("lambda--" + a );
    }
}

 

posted @ 2020-10-25 16:06  小智智  阅读(133)  评论(0)    收藏  举报