zoukankan      html  css  js  c++  java
  • Java函数式接口与逐步lambda简化

    函数式接口(functional interface 也叫功能性接口,其实是同一个东西)。

    简单来说,函数式接口是只包含一个方法的接口。比如Java标准库中的java.lang.Runnable和 java.util.Comparator都是典型的函数式接口。

    Java中的lambda无法单独出现,它需要一个函数式接口来盛放,lambda表达式方法体其实就是函数接口的实现.

    (在我们重现线程的run方法,实现数组倒序排序的时候重写comoarator时候都要用到lambda表达式 来实现函数式接口

    lambda包含三部分:
    1、一个括号内用逗号分隔的形式参数,参数是函数式接口里面方法的参数
    2、一个箭头符号:->
    3、方法体,可以是表达式和代码块。

    在IDEA中接口的方法 默认为抽象方法。

    在外面声明一个函数式接口 及一个对应的实现类

    在类中声明一个静态内部类

    static内部类是顶级内部类:可以一次性创建对象。非静态内部类 需要先创建外面的类 再通过外面的类创建非静态内部类。

    static内部类里面可以使用static关键字。

    我们回到简化上面来。看一下静态内部类。 放在类里

     

    局部内部类。放在方法里的

    匿名内部类 也是在方法里面的,不同点在于没有类的名称

    最后看一下lambda简化

  • 相关阅读:
    SQL_Server_2005_字符串函数(描述及实例)
    固定在左右两侧不动的广告条 样式
    jquery 浏览器判断
    sqlserver 2005无限极分类 获取 所有子分类
    asp.net使用treeview控件,递归加载
    C++day15 学习笔记
    Win32编程day02 学习笔记
    Win32编程day04 学习笔记
    C++day16 学习笔记
    Win32编程day05 学习笔记
  • 原文地址:https://www.cnblogs.com/cckong/p/14264821.html
Copyright © 2011-2022 走看看