博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java 8 新特性
阅读量:7112 次
发布时间:2019-06-28

本文共 1442 字,大约阅读时间需要 4 分钟。

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 − 加强对日期与时间的处理。

  • Optional 类 − Optional 类已经成为 Java 8 类库的一部分,用来解决空指针异常。

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

编程风格

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

Java8Tester.java 文件代码:

import java.util.Collections; import java.util.List; import java.util.ArrayList; import java.util.Comparator; public class Java8Tester {
public static void main(String args[]){
List<String> names1 = new ArrayList<String>(); names1.add("Google "); names1.add("Runoob "); names1.add("Taobao "); names1.add("Baidu "); names1.add("Sina "); List<String> names2 = new ArrayList<String>(); names2.add("Google "); names2.add("Runoob "); names2.add("Taobao "); names2.add("Baidu "); names2.add("Sina "); Java8Tester tester = new Java8Tester(); System.out.println("使用 Java 7 语法: "); tester.sortUsingJava7(names1); System.out.println(names1); System.out.println("使用 Java 8 语法: "); tester.sortUsingJava8(names2); System.out.println(names2); } //

转载地址:http://iaghl.baihongyu.com/

你可能感兴趣的文章
(笔记)VC6插件安装--Unable to register this add-in because its DllRegisterServer returns an error...
查看>>
【.net 深呼吸】细说CodeDom(7):索引器
查看>>
monolog使用
查看>>
【AtCoder010】B - Boxes(差分)
查看>>
三种 Failover 之 Client-Side Connect time Failover、Client-Side TAF、Service-Side TAF
查看>>
ES 相似度算法设置(续)
查看>>
46:八进制到十进制
查看>>
JAVA4种线程池的使用
查看>>
MonkeyRunner 模块
查看>>
ASP.NET Core实现OAuth2.0的AuthorizationCode模式
查看>>
Atitit tomcat在linux服务器的启动与其他
查看>>
C++/Php/Python 语言执行shell命令
查看>>
Oracle表空间维护总结
查看>>
12C -- ORA-01017
查看>>
约瑟夫环问题
查看>>
Compile、Make和Build的区别(as make, build, clean, run)
查看>>
介绍三款串口监控工具:Device Monitoring Studio,portmon,Comspy
查看>>
Bulk Load-HBase数据导入最佳实践
查看>>
sqlServer的主键只能自增不能手动增加
查看>>
maven常用命令介绍
查看>>