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)
  • 相关阅读:
    Log4Net 全方位跟踪程序运行
    ASP.NET MVC 3和Razor中的@helper 语法
    C# 4.0四大新特性代码示例与解读
    程序员必读
    重学算法(1)--遍历二叉树
    重学算法-目录
    Epplus使用技巧
    JQuery 获取URL中传递的参数
    Epplus 使用案例
    .net调用存储过程详解(转载)
  • 原文地址:https://www.cnblogs.com/wangzhen3798/p/15250245.html
Copyright © 2011-2022 走看看