zoukankan      html  css  js  c++  java
  • JAVA8新特性的一些理解

    什么是闭包

    闭包就是能够读取其他函数内部变量的函数。

    所以闭包可以理解成"定义在一个函数内部的函数"。

    在本质上,闭包是将函数内部和函数外部连接起来的桥梁。

    什么是函数式接口

    只有一个抽象方法的接口,就是函数式接口

    什么是Lambda表达式

    是一个闭包,赋予JAVA语言一个能力:将方法作为作为参数传递给另外一个方法。

    Lamda表达式是函数式接口的快捷实现方式。传统的复杂的实现方式如:匿名内部类。

    什么是方法引用

    是Lambda的另外一种表现形式或者叫更简单的写法。

    适用于这种场景:某些情况下,我们用Lambda表达式仅仅是调用一些已经存在的方法,除了调用动作外,没有其他任何多余的动作。这时候使用方法引用更简洁。

    方法引用可以用等价的Lambda表达式实现。如:

    类型语法对应的Lambda表达式
    静态方法引用 类名::staticMethod (args) -> 类名.staticMethod(args)
    实例方法引用 inst::instMethod (args) -> inst.instMethod(args)
    对象方法引用 类名::instMethod (inst,args) -> 类名.instMethod(args)
    构建方法引用 类名::new (args) -> new 类名(args)
  • 相关阅读:
    K-Means++ 聚类之数据可视化:使用gnuplot
    QQ设计第1-5步
    QQ设计第1-5步
    为什么有很深的windows基础还是不能动摇linux半步
    常用命令
    在线会计_金蝶友商网
    XP使用VNC远程桌面CentOS 6
    Fatal error: Call to undefined function mb_substr()
    如何汉化 po 文件及编译成 mo 文件
    idoerp
  • 原文地址:https://www.cnblogs.com/wangzhen3798/p/15250245.html
Copyright © 2011-2022 走看看