方法引用相关知识点

这里写目录标题

  • 方法引用
    • 方法引用符
      • 简介
      • 代码演示
    • Lambda表达式支持的方法引用
    • 引用 类方法
      • 简介
      • 使用
    • 引用对象的实例方法
      • 简介
      • 操作
    • 引用类的实例方法
      • 简介
      • 具体代码
    • 引用构造器
      • 简介
      • 代码演示

方法引用

方法引用符

简介

方法引用相关知识点_第1张图片
注意 这里引用符中的println会将

代码演示

方法引用相关知识点_第2张图片
首先定义一个接口,里面有一个抽象方法(含有参数),这个参数的值由测试类中自定义接口为参数的方法决定,方法里还要利用接口参数(视为接口的实现类对象)调用抽象方法并传入参数

方法引用相关知识点_第3张图片
main中,方法引用里,将方法里接口方法的参数设定交给了println,并输出
方法引用符时Lambda表达式基本格式的优化格式

Lambda表达式支持的方法引用

方法引用相关知识点_第4张图片

引用 类方法

简介

方法引用相关知识点_第5张图片

使用

方法引用相关知识点_第6张图片

方法引用相关知识点_第7张图片
注意这时方法里要有输出语句,因为该方法返回值类型为void,可以理解为这是一个行为方法,

并且main里面使用lambda以及引用(这两个代码都是规定了自定义方法的行为,而自定义方法的属性是在方法里通过接口实例化对象调用接口方法传入参数来设置的),都要可以理解为调用自定义方法

至于输出语句的位置,可以在自定义方法体内,也可以在lambda表达式里,但是如果想要让lambda表达式只有一条语句,并且无法简化成一条语句的情况下,可以将输出语句放在自定义方法里

引用符使用直接 类名::方法,原理 将lambda表达式的参数传递给引用表达式里的parsesInt方法使用

引用对象的实例方法

简介

方法引用相关知识点_第8张图片

操作

方法引用相关知识点_第9张图片
首先是一个类

方法引用相关知识点_第10张图片
之后是一个接口

方法引用相关知识点_第11张图片
这里是测试类
格式
调用自定义方法,之后 对象::成员方法

引用类的实例方法

简介

方法引用相关知识点_第12张图片

具体代码

方法引用相关知识点_第13张图片
首先是一个接口
方法引用相关知识点_第14张图片
这里类似对象引用,只不过这里对象换成了类,成员方法换成了静态方法,注意三行注释内容,第一个参数当作调用者,其他两个参数是参数

引用构造器

(适用于接口中抽象方法的返回值是student类的情况)

简介

方法引用相关知识点_第15张图片

代码演示

方法引用相关知识点_第16张图片
首先是一个接口

方法引用相关知识点_第17张图片
之后是一个标准类

方法引用相关知识点_第18张图片
这里是测试类,注意引用构造器格式,类::new

再次注意,lambda表达式可以理解为“调用自定义方法”语句,参数类型需要对应,如果没有其他多余的操作,直接返回接口抽象方法指定的返回值类型数据即可

你可能感兴趣的:(java)