Java8才支持lamda表达式 lamda是一中函数式编程语言 通过实现模式是匿名内部类
java使用内部类实现接口
首先定义一个接口
@FunctionalInterface
interface Foo{
//定义一个抽象方法
void fun();
}
public class InterfaceTest {
public static void main(String[] args){
//使用匿名内部类来实现接口
Foo f1 = new Foo(){
public void fun(){
System.out.println("Hello Java7.");
}
};
f1.fun();
但是发现只是实现一个简单的输出语句相对来说很麻烦
Foo f2 = ()-> System.out.println("Hello Java8.");
参数 -> 方法体
这样一样能达效果
(参数) ->
单行语句;
(params) ->
表达式;·
(参数) -> {
多行语句};