java8新特性

Java 8(又称为jdk 1.8)是Java语言开发的一个主要版本.Oracle公司于2014年3月18日发布Java 8,它支持函数式编程,新的JavaScript引擎,新的日期API,新的Stream API等。

新特性

Java8新增了非常多的特性,我们主要讨论以下几个:

Lambda表达式 - Lambda允许把函数作为一个方法的参数(函数作为参数传递进方法中。

方法引用 - 方法引用提供了非常有用的语法,可以直接引用已有Java类或对象(实例)的方法或构造器。与lambda联合使用,方法引用可以使用语言的构造更紧凑简洁,减少冗余代码。

默认方法 - 默认方法就是一个在接口里面有了一个实现的方法。

新工具 - 新的编译工具,如:Nashorn引擎jjs,类依赖分析器jdeps。

Stream API - 新添加的Stream API(java.util.stream)把真正的函数式编程风格引入到Java中。

Date Time API - 加强对日期与时间的处理。

可选类 - 可选类已经成为Java 8类库的一部分,用来解决空指针异常。

Nashorn,JavaScript引擎 - Java 8提供了一个新的Nashorn javascript引擎,它允许我们在JVM上运行特定的javascript应用。

更多的新特性可以参阅官网:JDK 8中的新功能

在关于Java 8文章的实例,我们均使用jdk 1.8环境,你可以使用以下命令查看当前jdk的版本:
$ java - 版本
Java版本“1.8.0_31” 的Java (TM )SE 运行时环境(建1.8 。0_31 - B13 )的Java HotSpot的(TM )64 - 位服务器VM (建25.31 - B07 ,混合模式)

编程风格

Java 8希望有自己的编程风格,并与Java 7区别开,以下实例展示了Java 7和Java 8的编程格式:
Java8Tester.java文件代码:
导入java 。util 。收藏;
导入java 。util 。清单;
导入java 。util 。ArrayList ;
导入java 。util 。比较者;

public class Java8Tester { public static void main (String args [ ] ){ List < String > names1 = new

   ArrayList < String > ();
  名字1 。添加(“ 谷歌” );
  名字1 。添加(“ Runoob ” );
  名字1 。添加(“ 淘宝” );
  名字1 。添加(“ 百度” );
  名字1 。添加(“ 新浪” );
    
  List < String > names2 = new ArrayList < String > ();
  名字2 。添加(“ 谷歌” );
  名字2 。添加(“ Runoob ” );
  名字2 。添加(“ 淘宝” );
  名字2 。添加(“ 百度” );
  名字2 。 添加(“ 新浪” );
    
  Java8Tester tester = new Java8Tester ();
  系统。出。println (“ 使用Java 7语法:” );
    
  测试员。sortUsingJava7 (names1 );
  系统。出。println (names1 );
  系统。出。println (“  使用的Java 8语法:“ );
    
   测试仪。sortUsingJava8 (names2 );
   系统。出来。的println (names2 );
} // 使用Java 7的排序

private void sortUsingJava7 (List < String > names ){ Collections 。排序(名称,新的比较< 字符串> (){
@ 覆盖公共INT 比较(字符串S1 ,字符串S2 ){ 返回S1 。的compareTo (S2 );
} } );
}

// 使用java 8排序
private void sortUsingJava8 (List < String > names ){ Collections 。排序(名称,(S1 ,S2 )- > S1 。的compareTo (S2 ));
} }
Java教程
Java教程
Java简介
Java开发环境配置
Java基础语法
Java对象和类
Java基本数据类型
Java变量类型
Java修订

Java
运算符
Java循环结构
Java条件语句
Java开关案例
Java数字和数学类
Java字符类
Java字符串类
Java StringBuffer
Java数据
Java日期时间
Java正则表达式
Java方法
Java流,文件,IO
Java扫描程序类
Java异常处理

Java的面向对象
Java继承
Java覆盖/重载
Java多态
Java抽象类
Java封装
Java接口
Java包(包)

Java的高级教程
Java数据结构
Java集合框架
Java泛型
Java序列化
Java网络编程
Java
多线程编程
Java Applet基础
Java文档注释
Java实例
Java 8新特性
Java MySQL连接
Java 9新特性
Java测验
Java实例 Java MySQL连接
Java 8新特性
Java 8(又称为jdk 1.8)是Java语言开发的一个主要版本.Oracle公司于2014年3月18日发布Java 8,它支持函数式编程,新的JavaScript引擎,新的日期API,新的Stream API等。

新特性
Java8新增了非常多的特性,我们主要讨论以下几个:

Lambda表达式 - Lambda允许把函数作为一个方法的参数(函数作为参数传递进方法中。

方法引用 - 方法引用提供了非常有用的语法,可以直接引用已有Java类或对象(实例)的方法或构造器。与lambda联合使用,方法引用可以使用语言的构造更紧凑简洁,减少冗余代码。

默认方法 - 默认方法就是一个在接口里面有了一个实现的方法。

新工具 - 新的编译工具,如:Nashorn引擎jjs,类依赖分析器jdeps。

Stream API - 新添加的Stream API(java.util.stream)把真正的函数式编程风格引入到Java中。

Date Time API - 加强对日期与时间的处理。

可选类 - 可选类已经成为Java 8类库的一部分,用来解决空指针异常。

Nashorn,JavaScript引擎 - Java 8提供了一个新的Nashorn javascript引擎,它允许我们在JVM上运行特定的javascript应用。

更多的新特性可以参阅官网:JDK 8中的新功能

在关于Java 8文章的实例,我们均使用jdk 1.8环境,你可以使用以下命令查看当前jdk的版本:

$ java - 版本
Java版本“1.8.0_31” 的Java (TM )SE 运行时环境(建1.8 。0_31 - B13 )的Java HotSpot的(TM )64 - 位服务器VM (建25.31 - B07 ,混合模式)

编程风格
Java 8希望有自己的编程风格,并与Java 7区别开,以下实例展示了Java 7和Java 8的编程格式:

Java8Tester.java文件代码:
导入java 。util 。收藏;
导入java 。util 。清单;
导入java 。util 。ArrayList ;
导入java 。util 。比较者;

public class Java8Tester { public static void main (String args [ ] ){ List < String > names1 = new

   ArrayList < String > ();
  名字1 。添加(“ 谷歌” );
  名字1 。添加(“ Runoob ” );
  名字1 。添加(“ 淘宝” );
  名字1 。添加(“ 百度” );
  名字1 。添加(“ 新浪” );
    
  List < String > names2 = new ArrayList < String > ();
  名字2 。添加(“ 谷歌” );
  名字2 。添加(“ Runoob ” );
  名字2 。添加(“ 淘宝” );
  名字2 。添加(“ 百度” );
  名字2 。 添加(“ 新浪” );
    
  Java8Tester tester = new Java8Tester ();
  系统。出。println (“ 使用Java 7语法:” );
    
  测试员。sortUsingJava7 (names1 );
  系统。出。println (names1 );
  系统。出。println (“  使用的Java 8语法:“ );
    
   测试仪。sortUsingJava8 (names2 );
   系统。出来。的println (names2 );
} // 使用Java 7的排序

private void sortUsingJava7 (List < String > names ){ Collections 。排序(名称,新的比较< 字符串> (){
@ 覆盖公共INT 比较(字符串S1 ,字符串S2 ){ 返回S1 。的compareTo (S2 );
} } );
}

// 使用java 8排序
private void sortUsingJava8 (List < String > names ){ Collections 。排序(名称,(S1 ,S2 )- > S1 。的compareTo (S2 ));
} }

执行以上脚本,输出结果为:
$ javac Java8Tester 。java的
$ java Java8Tester 使用Java 7 语法:[ 百度,谷歌,Runoob ,新浪,淘宝] 使用Java 8 语法:[ 百度,谷歌,Runoob ,新浪,淘宝]
接下来我们将详细为大家简介Java 8的新特性:
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值