JDK8新特性之一Lambda

JDK8的新特性之一Lambda能将函数作为方法里面的参数使用。

/**
 * JDK8新特性Lambda
 */

public class Test {
    public static void main(String[] args) {
        new Thread(new Runnable() { //使用每个匿名内部类的时候,有部分代码是必须公用的,所有有省略的空间
            @Override
            public void run() {

            }
        });

        new Thread(()->{    //由匿名内部类简化成Lambda
            System.out.println("HelloWorld");
        }).start();
    }
}

外部类——>静态内部类——>局部内部类——>匿名内部类——>Lambda

/**
 * JDK8新特性Lambda
 */

public class Test {
    public static void main(String[] args) {
        ILove love = (() -> {   //由new Runnable得到启发,当创建一个匿名内部类(接口)的时候都可以使用Lambda
            System.out.println("HelloWorld");
        });
        love.output();
    }
}

interface ILove{
    public void output();
}

Lambda的局限性:仅合适只有一个方法的接口(简单接口,Runnable接口里面就只有一个方法run())。

posted @ 2019-06-26 09:45  一转身已万水千山  阅读(172)  评论(0)    收藏  举报