Java8新特性Lambda表达式----函数式编程
2019-05-31 16:28
411 查看
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/gongbnehongyi/article/details/90717739
函数式接口
1.概念
函数式接口在Java中是指:有且仅有一个抽象方法的接口。
函数式接口,即适用于函数式编程场景的接口。而Java中的函数式编程体现就是Lambda,所以函数式接口就是可
以适用于Lambda使用的接口。只有确保接口中有且仅有一个抽象方法,Java中的Lambda才能顺利地进行推导
2.格式:只要确保接口中有且仅有一个抽象方法即可
修饰符 interface 接口名称 {
public abstract 返回值类型 方法名称(可选参数信息); //接口当中抽象方法的public abstract 是可以省略的
// 其他非抽象方法内容
}
3.@FunctionalInterface注解
Java 8中专门为函数式接口引入了一个新的注解: @FunctionalInterface
[code]//该注解可用于一个接口的定义上 @FunctionalInterface public interface MyFunctionalInterface { void myMethod(); }
一旦使用该注解来定义接口,编译器将会强制检查该接口是否确实有且仅有一个抽象方法,否则将会报错。需要注
意的是,即使不使用该注解,只要满足函数式接口的定义,这仍然是一个函数式接口,使用起来都一样。
4.自定义函数式接口
[code]//对于刚刚定义好的MyFunctionalInterface 函数式接口,典型使用场景就是作为方法的参数: public class Demo09FunctionalInterface { // 使用自定义的函数式接口作为方法参数 private static void doSomething(MyFunctionalInterface inter) { inter.myMethod(); // 调用自定义的函数式接口方法 } public static void main(String[] args) { // 调用使用函数式接口的方法 doSomething(() ‐> System.out.println("Lambda执行啦!")); } }
相关文章推荐
- Java8新特性Lambda表达式、函数式接口
- 函数式编程之 Lambda 表达式的引出_Java8 实践
- JAVA8新特性-Lambda表达式、函数式接口以及方法引用
- Java8 Lambda表达式 函数式编程
- Java函数式编程之最细致的lambda表达式讲解
- Java8 新特性之一---------Lambda表达式和函数式接口
- Java8 Lambda表达式 函数式编程
- java1.8 lambda表达式 函数式编程 闭包
- Java 函数式编程和 lambda 表达式
- Java8 新特性----函数式接口,以及和Lambda表达式的关系
- Java8 Lambda表达式 函数式编程 方法引用
- Java8新特性之Lambda表达式和函数式接口
- java8新特性之函数式接口、lambda表达式、接口的默认方法、方法和构造函数的引用
- java8新特性lambda表达式, 函数式接口以及Steam流和新的日期时间例子代码
- Java8的重要特性(lambda表达式和流式编程)
- Java8特性总结(二)Lambda表达式,函数式接口,方法引用
- Java - 函数式编程,Lambda 表达式
- java函数式编程之lambda表达式
- java8新特性(一)之Lambda表达式和函数式接口
- Java 函数式编程和 lambda 表达式