Java8关于Function接口

Java学习-Function接口

  • 1 函数式接口简介和学习地址
  • 2 两种常见的函数式接口
      • 2.1 Runnable:执行接口,不接收参数,也无返回结果。
      • 2.2 Consumer:作为消费接口,接收一个参数,无返回结果。
  • 3 初识
      • 3.1 定义Function接口
          • 3.1.1 定义`ThrowExceptionClass`Function`接口`
          • 3.1.2 定义`BranchHandleDemo`Function`接口`
          • 3.1.3 定义`PrentOrElseDemo`Function`接口`
      • 3.2 定义service类
          • 3.2.1 isTrue方法
          • 3.2.2 isTrueOrFalse方法
          • 3.2.3 isPresent方法
      • 3.3 定义control类
  • 4 总结

1 函数式接口简介和学习地址

函数式接口可以被隐式转换为 lambda 表达式。

函数式接口(Functional Interface)就是一个有且仅有一个抽象方法,但是可以有多个非抽象方法的接口。

参考地址1:菜鸟教程
参考地址2:B站视频

2 两种常见的函数式接口

2.1 Runnable:执行接口,不接收参数,也无返回结果。

Java8关于Function接口_第1张图片

2.2 Consumer:作为消费接口,接收一个参数,无返回结果。

Java8关于Function接口_第2张图片

3 初识

3.1 定义Function接口

  • 首先是接口Interface
  • 其次接口上方写上注解@FunctionalInterface
  • 定义抽象方法[函数式接口只能有且仅有一个方法]
3.1.1 定义ThrowExceptionClassFunction接口
package functioninterfacedemo.util;

/**
 * @author klxz
 * @description ThrowExceptionClass
 * @date 2024/4/7
 */
@FunctionalInterface
public interface ThrowExceptionClass {
   
    /**
     * throwMessage
     *
     * @param message message
     */
    void throwMessage(String message);
}
3.1.2 定义BranchHandleDemoFunction接口
package functioninterfacedemo.util;

/**
 * @author klxz
 * @description BranchHandleDemo
 * @date 2024/4/7
 */
@FunctionalInterface
public interface BranchHandleDemo {
   
    /**
     * trueOrFalseHandler
     *
     * @param trueHandler trueHandler
     * @param falseHandler falseHandler
     */
    void trueOrFalseHandler(Runnable trueHandler, Runnable falseHandler);
}
3.1.3 定义PrentOrElseDemoFunction接口
package functioninterfacedemo.util;

import java.util.function.Consumer;

/**
 * @author klxz
 * @description PrentOrElseDemo
 * @date 2024/4/7
 */
@FunctionalInterface
public interface PrentOrElseD

你可能感兴趣的:(学习java高级编程,开发语言,java,Function接口)