zoukankan      html  css  js  c++  java
  • Lambda表达式要点

    1、Lambda表达式的使用位置

    1)、带有单一抽象方法的接口-Runnable、Callable、Comparable

    2)、方法接受声明于java.util.function包内的接口 -Predict、Function、Consumer、Supplier

    2、lambda表达式和方法引用

    lambda 表达式内可以使用方法引用,仅当该方法不修改 lambda表达式提供的参数。

    若对参数有任何修改,则不能使用方法引用,需要完整的键入lambda表达式

    3、lambda表达式内部引用资源

    lambda内部可以使用静态、非静态和局部变量,这称为lambda内的变量捕获

    4、lambda表达式也成闭包

    lambda表达式在java中又称为闭包或匿名函数。

    5、lambda表达式的编辑方式。

    lambda方法在编译器内部被编译成私有方法,并派发invokedynamic字节码指令来进行调用。可以使用JDK中的javap工具来反编译class文件。使用javap -p或javap -c -v 命令来看一看lambda表达式生成的字节码。

    private static java.lang.Object lambda$0(java.lang.String)

    6、lambda表达式的限制

    lambda表达式有个限制,只能引用final或final局部变量,不能在lambda内部修改定义在域外的变量。

    另外,只是访问而不作修改是可以的。

  • 相关阅读:
    速达开发小组面试题分享下
    NC V6 nchome文件目录及其作用介绍
    GIL 线程池 进程池 同步 异步 阻塞 非阻塞
    线程
    守护进程进程安全
    并发
    22个所见即所得在线 Web 编辑器
    asp.net操纵Oracle存储过程
    JQuery 中each的使用方法
    JQuery实现简单的服务器轮询效果
  • 原文地址:https://www.cnblogs.com/nangonghui/p/11694319.html
Copyright © 2011-2022 走看看