13.JDK1.8新特性

第十三章【函数式接口、Lambda表达式】

1.函数式接口

内部有且只有一个抽象方法

内部可以包含若干个静态方法和default方法

2.接口中方法的定义

抽象方法

静态方法:使用 接口名.静态方法名

default:

3.lambda表达式

Java内部类的简写形式

接口 引用 = () -> {};

引用.方法()

4.预定义接口

Predicate:传递一个参数,返回一个boolean类型的值,一般用于判断

​ public boolean test(T t){}

Consumer:传入一个数据没有返回值

​ void accept(T t);

Function<T,R>:传一个数据,得到一个返回值

​ R apply(T t);

Supplier:不传参数有返回值

​ T get();

5.方法的引用

静态方法的引用

类名::静态方法名

对象引用方法

对象::非静态方法

构造方法引用

Student::new

数组类型::new【方法中必须传递一个长度】

实例方法的引用

类名::非静态方法

条件:

  1. 抽象方法的第一个参数,作为被引用方法的调用对象,即被引用的方法一定可以被该抽象方法的第一个参数去调用

  2. 接口中抽象方法除了第一个参数的其他参数,要作为被引用方法的参数列表

  3. 被引用方法和抽象方法返回类型一致

posted @ 2024-04-14 23:51  可乐爱兑姜汁  阅读(1)  评论(0编辑  收藏  举报