码迷,mamicode.com
首页 > 编程语言 > 详细

java8简单入门--函数式接口 @FunctionalInterface

时间:2017-07-15 11:17:46      阅读:454      评论:0      收藏:0      [点我收藏+]

标签:文艺青年   青年   ide   run   最大的   nali   实现   thread   方法   

1、介绍

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

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

 

2、函数式接口 -- @Functionnalinterface

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

  1. 接口必须只有一个抽象方法;
  2. 接口可以有其他的默认(default)或者静态(static)方法;
  3. 接口默认继承了 Object 类,所以接口中不能覆盖了 Object 中的方法;

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

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

  

 1 public static void runThreadByLambda() {
 2     Runnable runnable = () -> System.out.println("这个是用拉姆达实现的线程");
 3     new Thread(runnable).start();
 4 }
 5 
 6 //---------------------------------------------------------------------------------
 7 public static void runThreadByInnerClass() {
 8     Runnable runnable = new Runnable() {
 9     @Override
10     public void run() {
11         System.out.println("这个是用内部类实现的线程");
12     }
13     };
14     new Thread(runnable).start();
15 }

 

java8简单入门--函数式接口 @FunctionalInterface

标签:文艺青年   青年   ide   run   最大的   nali   实现   thread   方法   

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!