Java8的lambda 自己实现一个之接口使用

以前对于java8 的lambda使用过,就是用在了spring JdbcTemplate 的一些数据库dml操作方法上,但是并不会自己书写一个,今天学习了下,还是很好理解的。

第一步、我们建立一个接口,并且书写一个抽象方法

这里要特别注意,想用lambda表达式方式书写,这里一定只能书写一个抽象方法!

在这里不用拽特性,例如说重载啊,都不行,我都是用过了,只允许一个抽象函数

建立一个接口(抽象方法、默认方法、静态方法)

在这里你看到我的截图你可能说了,你看你这里面有三个方法,对啊,一般会书写接口的,或者基础比较好的,都知道,接口里面是可以书写默认方法和静态方法的,这种方法是没有限制的,但是抽象方法必须只有一个(普及下知识点哈:抽象方法是没有方法体的,只是虚函数)publicinterfaceTestLambdaService{voidtest(Stringname);defaultvoidtest1(){System.err.println("#test1 perform");}staticvoidtest2(){System.err.println("#test2 perform");}}

第二步、书写lanbda表达式实现接口的抽象方法

TestLambdaService testLambdaService = (String name) -> {            System.err.println("lanbda test"+name);        };

括号里面的参数name String这个可写可不写

第三步、调用方法执行逻辑

testLambdaService.test("你好");

第四步、运行查看输出结果

附注:

@FunctionalInterface 这个注解是放在TestLambdaService 接口之上的,表明了这个接口是一个函数接口

加入函数接口注解

这个注释可以帮助你严格检查,你是写了一个抽象方法还是多个,如果书写多个抽象方法则直接会报错

下一次更新 lambda之 抽象类的使用

蚁点广告君来啦!!!旅游内部特价票:请假微信ucisoft

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • //Clojure入门教程: Clojure – Functional Programming for the J...
    葡萄喃喃呓语阅读 3,853评论 0 7
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,839评论 18 399
  • lambda表达式(又被成为“闭包”或“匿名方法”)方法引用和构造方法引用扩展的目标类型和类型推导接口中的默认方法...
    183207efd207阅读 1,504评论 0 5
  • 我是尘埃中一颗渺小的沙砾,可是父母始终认为我是可以发光的矿物质,也常常与其比肩。 我每天都随着暴风游走,...
    执顾念北阅读 467评论 0 1
  • 每天,可以和心意相投的朋友在这儿交流。可以传播和弘扬正能量。这儿里真的是个修心的好地方。 每天读点儿好文章,坚持读...
    小溪终入海阅读 220评论 5 8