码迷,mamicode.com
首页 > 其他好文 > 详细

图解jdk1.8新特性(1)

时间:2019-10-23 18:00:41      阅读:94      评论:0      收藏:0      [点我收藏+]

标签:编译   nali   接口实现   接口调用   func   方式   实现类   方法   fun   

图解jdk1.8新特性(1)

函数式接口

技术图片

技术图片

总结起来就以下几点:

  • 如果一个接口要想成为函数接口(函数接口可以直接用lambda方式简化),则必须有且仅有一个抽象的方法(非default和static)

  • 可以通过注解@FunctionalInterface注解通过在编译时报错防止其他人破坏函数式接口


接口默认和静态方法

技术图片

技术图片

技术图片

总结如下:

  • jdk1.8之后接口可以实现default方法和static方法,其实就是将接口当做了一个抽象类
  • default方法是非静态,必须通过接口的实现类来调用,接口实现类中可以对该方法进行重写。而static方法可以直接通过接口调用。

方法引用

技术图片

技术图片

技术图片

技术图片

总结如下:

  • 方法的引用方式只能用在作为方法的参数,不能用在new创建对象上
  • 方法引用作为参数时,原参数类型必须是函数式接口或者原本是一个lambda表达式
  • 用方法引用new出来的对象,其实质上还是函数式接口的一个lamba子类,此时多态不起作用

图解jdk1.8新特性(1)

标签:编译   nali   接口实现   接口调用   func   方式   实现类   方法   fun   

原文地址:https://www.cnblogs.com/Kidezyq/p/11727708.html

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