A此刻·少年

JDK1.8新特性简介

2017-05-265 分钟 2.7k 次阅读
JDK1.8新特性简介

1、接口定义增强#

可以用static default来定义接口方法 用default来定义普通方法,这样子类就不用强制覆写这个方法了。 用static来定义静态方法

2、lamda表达式#

专给lanmda使用的接口加上annotation @FunctionalInterface 其中只能有一个方法 使用: (参数) -> 程序执行语句 (参数) -> {程序执行语句块} 简单返回: (参数) -> 表达式;

3、方法引用#

方法引用与对象引用类似,为方法设置别名,分为四种形式:

  • 引用静态方法: 类名称 ::static 方法名称
  • 引用某个对象的方法: 实例化对象 :: 普通方法
  • 引用特定类型的方法: 特定类 :: 普通方法
  • 引用构造方法: 类名称 :: new

方法引用与lamda表达式相关联,具体使用需要依赖lamda

4、内建函数式接口#

方法的引用,四种接口的代码示例完成。

4个内建函数式接口:

  • 功能型接口-Function startWith
@FunctionalInterface
public interface Function<T, R> {
public R apply(T t);
}
  • 供给型接口-Supplier toUpperCase
@FunctionalInterface
public interface Supplier<T> {
public T get();
}
  • 断言型接口-Predicate equals
@FunctionalInterface
public interface Predicate<T> {
public boolean test(T t);
}
  • 消费型接口-Consumer
@FunctionalInterface   System.out.println()
public interface Consumer<T> {
public void accept(T t);
}

分享这篇文章

相关阅读

评论0

还没有评论,来说点什么吧~

评论发布后需审核才会展示