java interface 函数_java8简单入门--函数式接口 @FunctionalInterface

1、介绍

看了几篇关于 java8 入门的例子,其中引入了许多令人期待已久的特性(虽然我没有过这样的体会),但不管你的代码是普通青年款还是文艺青年款,你都可以从被 java8 的重新组织的代码看到她的简洁之处,不得不让我对这些新入贵圈(java圈)的小鲜肉做一些记录,以便我能很好的利用他们。

最大的一个特点莫非就是引入了“函数式”编程这一个概念(都是剽窃的别的语言来的),还有那么多新奇的词语,比如“语法糖”“闭包”“显式|隐式函数”等这里我就不再一个一个去体会了,这里属于初次接触,先理解会用为主,细节的深入待后期慢慢琢磨。

2、函数式接口 -- @Functionnalinterface

在翠花正式上代码示例之前,我们现来对这个函数式接口有个认识:

接口必须只有一个抽象方法;

接口可以有其他的默认(default)或者静态(static)方法;

接口默认继承了 Object 类,所以接口中不能覆盖了 Object 中的方法;

说明:该注解不是必须的,如果一个接口满足“函数式接口”特性,那么不加这个注解也没有影响,加上该注解能够更好的让编译器检查,如果不符合规范将会报编译错误。

比如在 jdk8 中就对Comparator、Callable、Runnable等接口加上了该注解,下面两段代码的效果是一样的:

1 public static voidrunThreadByLambda() {2 Runnable runnable = () -> System.out.println("这个是用拉姆达实现的线程");3 newThread(runnable).start();4 }5

6 //---------------------------------------------------------------------------------

7 public static voidrunThreadByInnerClass() {8 Runnable runnable = newRunnable() {9 @Override10 public voidrun() {11 System.out.println("这个是用内部类实现的线程");12 }13 };14 newThread(runnable).start();15 }

原文:http://www.cnblogs.com/afanti558/p/7181867.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值