jdk8

函数是接口:

  1. 若是一个接口只有一个抽象方法,那么该接口就是一个 函数式接口。
  2. 若是在接口上声明了FunctionInterface注解,那么编译器就会按照函数式接口的定义要求该接口。
  3. 若是某个接口只有一个抽象方法,并无声明FunctionInterface注解,也会是一个函数式接口。
  • 将函数做为一等公民的语言中,Lambda表达式的类型是函数,但在Java中,Lambda表达式是对象,他们必须依附于一类特别的对象类型--函数式接口(FunctionalInterface)
  • Java Lambda表达式是一种匿名函数;他是没有什么的方法,即没有访问修饰符、返回值声明和名字;
  • Lambda表达式的做用
  1. 传递行为,而不单单是值;提高抽象层次;API重用性更好;更加灵活;
  2. 传统作法是将行为提早定义好,Lambda表达式能够在使用的时候传递行为

完整语法

(type1 arg1,type2 arg2,..) -> {body}函数

相关文章
相关标签/搜索