1、为何要是用Lamda表达式

使代码更加简洁

避免定义过多的匿名内部类

去掉一堆作用不大的代码,只留下核心的逻辑

 

 

函数式接口的定义:

任何接口,只包含唯一的一个抽象方法,那它就是一个函数式接口

 

 1 public class Lamda表达式
 2 {
 3     //静态内部类
 4     static  class  Like2 implements Ilike{
 5         @Override
 6         public void Like(){
 7             System.out.println("I Not Like Study");
 8         }
 9     }
10     public static void main(String[] args) {
11         Ilike like =new Likestudy();
12         like.Like();
13         //局部内部类
14         class Likestudy1 implements Ilike{
15             @Override
16             public void Like(){
17                 System.out.println("I Like Study 2");
18             }
19         }
20         like =new Likestudy1();
21         like.Like();
22         //匿名内部类 无类名,必须借助接口或者父类
23         like = new Ilike(){
24             @Override
25             public void Like(){
26                 System.out.println("I Like Study 3");
27             }
28         };
29         like.Like();
30         like = new Like2();
31         like.Like();
32         //Lamda表达式 简洁,但可读性差
33         like=()->{
34                 System.out.println("I Creazy Like Study");
35         };
36         like.Like();
37 
38     }
39 }
40 //定义函数式接口
41 interface Ilike {
42     void Like();
43 }
44 class Likestudy implements Ilike{
45     @Override
46     public  void Like(){
47         System.out.println("I Like Study 1");
48     };
49         }

 

posted on 2022-05-19 10:57  OYYC  阅读(23)  评论(0编辑  收藏  举报