JDK8 in action学习笔记-公开
2021-08-18 15:08:13 13 举报
AI智能生成
JDK8学习笔记帮助大家复习
作者其他创作
大纲/内容
Java 8
函数
方法,尤其是静态方法。数学函数,没有副作用的函数
值的一种新形式。
方法和Lambda作为一等值
执行时在元素之间无互动
方法可以作为值传递
谓词
Predicate
流
外部迭代
内部迭代
stream加入Collection接口
默认方法
多重继承
菱形继承问题
Optional
通过行为参数化传递代码
行为参数化:方法接受多个不同的行为作为参数,并在内部使用它们,完成不同行为的能力
编写代码后,抽象化
类传递值
Lambda表达式
泛型化
Lambda 表达式
简洁地表示可传递的匿名函数的一种方式
接受函数式接口的地方才可以使用Lamda表达式
理论上,Java8之前做不了的事情,Lambda也做不了
Lambda表达式所需要代表的类型称为目标类型
函数式接口
声明了一个抽象方法的接口
FunctionalInterface
Java8中的常用的函数式接口,java.util.function
Predicate
Consumer
Function
Supplier
Java8中的常用的函数式接口2
Java8中的常用的函数式接口1
原始类型的特化
类型检查
类型推断
局部变量
闭包
方法引用
静态方法
实例方法
现有对象的引用
方法引用让你重复使用现有的方法实现并直接传递它们
实例
inventory.sort(comparing(Apple::getWeight));
复合表达式
比较器复合
reversed, thenComparing
谓词复合
and,or
函数复合
andThen,compose
环绕执行模式(即在方法所必需的代码中间,你需要执行点儿什么操作,比如资源分配
和清理)可以配合Lambda提高灵活性和可重用性。
Comparator、Predicate和Function等函数式接口都有几个可以用来结合Lambda表达
式的默认方法。
函数式数据处理
引入流
synchronized代价比你预期的大得多
什么是流
集合与流
内部迭代与外部迭代
中间操作与终端操作
使用流
用流收集数据
并行数据处理与性能
重构、测试和调试
默认方法.
用Optional 取代null
CompletableFuture:组合式
异步编程
新的日期和时间API
函数式的思考
函数式编程的技巧
面向对象和函数式编程的混合:
Java 8 和Scala 的比较
结论以及Java 的未来
收藏
收藏
0 条评论
下一页