Java 8版本最大的改进就是Lambda表达式,其目的是使Java更易于为多核处理器编写代码;其次,新加入的Nashorn引擎也使得Java程序可以和JavaScript代码互操作;再者,新的日期时间API、GC改进、并发改进也相当令人期待。

另外,原本要加入Java 8的Jigsaw项目(标准模块系统)由于开发时间关系,被推迟到了Java 9中,不过Java 8已经在朝着这个方向努力了。

Java 8的所有新特性及改进包括(JEP全称为JDK Enhancement Proposal,JDK改进建议):

语言改进:

  • JEP 126:Lambda表达式 & 虚拟扩展方法
  • JEP 138:基于Autoconf的构建系统
  • JEP 160:针对Method Handles的Lambda形式的表征
  • JEP 161:简洁的配置文件
  • JEP 162:为模块化做准备
  • JEP 164:利用CPU指令来改善AES加密的性能
  • JEP 174:Nashorn引擎,允许在Java程序中嵌入JS代码
  • JEP 176:自动检测识别Caller-Sensitive方法
  • JEP 179:JDK API变化和稳定性记录

VM基础改进:

  • JEP 142:减少指定字段上的缓存争用

VM垃圾回收(vm/gc)改进:

  • JEP 122:移除Permanent Generation(永久代)
  • JEP 173:移除一些很少使用的垃圾回收器组合

VM运行时(vm/rt)改进:

  • JEP 136:提供更多的验证错误信息
  • JEP 147:减少类元数据封装
  • JEP 148:支持创建小型虚拟机(3M以下)
  • JEP 171:添加3个内存有序化的内联函数

核心基础(core)改进:

  • JEP 153:命令行启动JavaFX应用

核心lang(core/lang)改进:

  • JEP 101:目标类型推断
  • JEP 104:Java类型注解
  • JEP 105:DocTree API
  • JEP 106:在javax.tools中添加Javadoc
  • JEP 117:移除APT(Annotation-Processing Tool)
  • JEP 118:运行过程中可访问参数名
  • JEP 120:重复注解
  • JEP 139:增强了javac,以改善构建速度
  • JEP 172:DocLint工具,用来检查Javadoc注释内容

核心库(core/libs)改进:

  • JEP 103:并行数组排序
  • JEP 107:集合数据批量操作
  • JEP 109:增强的包含Lambda的核心库
  • JEP 112:改进了字符集的实现
  • JEP 119:Core Reflection提供的javax.lang.model实现
  • JEP 135:Base64编解码
  • JEP 149:减少了核心库的内存占用
  • JEP 150:日期时间API
  • JEP 155:改进对并发的支持
  • JEP 170:JDBC 4.2
  • JEP 177:java.text.DecimalFormat.format优化
  • JEP 178:静态链接的JNI库
  • JEP 180:使用平衡树处理频繁的HashMap碰撞

核心i18n(core/i18n)改进:

  • JEP 127:改进了本地数据封装,采用Unicode CLDR数据
  • JEP 128:BCP 47局部匹配
  • JEP 133:Unicode 6.2

核心net(core/net)改进:

核心安全(core/sec)改进:

  • JEP 113:MS-SFU Kerberos 5扩展
  • JEP 114:TLS Server Name Indication(SNI)扩展
  • JEP 115:AEAD密码套件
  • JEP 121:更强的口令加密系统算法
  • JEP 123:可配置的安全随机数生成方法
  • JEP 124:增强了证书撤回检测API
  • JEP 129NSA Suite B加密算法实现
  • JEP 130:SHA-224消息摘要算法实现
  • JEP 131:针对64位Windows的SunPKCS11加密提供程序
  • JEP 140:特权限制
  • JEP 166:彻底检修JKS-JCEKS-PKCS12密钥库

web/jaxp改进:

    • JEP 185:JAXP 1.5(限制获取外部资源

Java 8新特性的更多相关文章

  1. Java 8新特性-4 方法引用

    对于引用来说我们一般都是用在对象,而对象引用的特点是:不同的引用对象可以操作同一块内容! Java 8的方法引用定义了四种格式: 引用静态方法     ClassName :: staticMetho ...

  2. Spring 4支持的Java 8新特性一览

    有众多新特性和函数库的Java 8发布之后,Spring 4.x已经支持其中的大部分.有些Java 8的新特性对Spring无影响,可以直接使用,但另有些新特性需要Spring的支持.本文将带您浏览S ...

  3. java 8 新特性

    最近在IDEA的️驱使下,看了点java8的东西,链接贴一下,,,,, 1.Java 8新特性概述2.Java 8中的 Stream API 详解[3.Java 8新特性终极指南] 简单的使用看完新特 ...

  4. Java 8 新特性终极版

    声明:本文翻译自Java 8 Features Tutorial – The ULTIMATE Guide,翻译过程中发现并发编程网已经有同学翻译过了:Java 8 特性 – 终极手册,我还是坚持自己 ...

  5. Java 8新特性前瞻

    快端午小长假了,要上线的项目差不多完结了,终于有时间可以坐下来写篇博客了. 这是篇对我看到的java 8新特性的一些总结,也是自己学习过程的总结. 几乎可以说java 8是目前为止,自2004年jav ...

  6. Java 8新特性探究(八)精简的JRE详解

    http://www.importnew.com/14926.html     首页 所有文章 资讯 Web 架构 基础技术 书籍 教程 Java小组 工具资源 - 导航条 - 首页 所有文章 资讯 ...

  7. Java 8 新特性1-函数式接口

    Java 8 新特性1-函数式接口 (原) Lambda表达式基本结构: (param1,param2,param3) -> {代码块} 例1: package com.demo.jdk8; i ...

  8. 【整理】Java 8新特性总结

    闲语: 相比于今年三月份才发布的Java 10 ,发布已久的Java 8 已经算是老版本了(传闻Java 11将于9月25日发布....).然而很多报道表明:Java 9 和JJava10不是 LTS ...

  9. 一小时上手Java 8新特性

    一小时上手Java 8新特性 本文摘译自 https://www.journaldev.com/2389/java-8-features-with-examples,并做了适当增补. Iterable ...

  10. Java 8 新特性:1-函数式接口

    (原) Java 8 新特性1-函数式接口 Lambda表达式基本结构: (param1,param2,param3) -> {代码块} Lambda表达式结构: (type1 arg1,typ ...

随机推荐

  1. OpenCV成长之路(8):直线、轮廓的提取与描述

    基于内容的图像分析的重点是提取出图像中具有代表性的特征,而线条.轮廓.块往往是最能体现特征的几个元素,这篇文章就针对于这几个重要的图像特征,研究它们在OpenCV中的用法,以及做一些简单的基础应用. ...

  2. Mysql中索引的 创建,查看,删除,修改

    创建索引 MySQL创建索引的语法如下: ? 1 2 3 CREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX index_name [USING index_type] ON ...

  3. 报错:No package erlang available

    问题 yum install erlang 报错:No package erlang available 同样的,如果我们在安装nginx的时候出现"No package nginx ava ...

  4. 9.9---n皇后问题(CC150)

    思路:首先写一个检查能不能摆的函数.boolean checkValid(int[] columns,int row1, int column1);意思是row1行摆在column1列可不可以. 然后 ...

  5. Intellij IDEA + Jrebel

    Jrebel java热部署神器! 如果你没用过这里一句白话说明,就是在修改了class等源文件后无需重启web容器(如Tomcat)直接生效! 找到以后 安装... 然后 激活地址 :http:// ...

  6. Java中对List集合内的元素进行顺序、倒序、随机排序的示例代码

    import java.util.Collections; import java.util.LinkedList; import java.util.List; public class Test ...

  7. NGUI 滑动页(UIToggle和UIToggledObjects)

    1.NGUI->Create->Scroll View 2.给Scroll View添加一个 UIGrid,自己设置Arragement(横向竖向) 3.给Grid添加元素 4.给元素添加 ...

  8. 多线程同步_Monitor

    多线程一直在学习和理解中...... Monitor类是多线程中用以实现同步的一种技术,主要是同一进程内多线程间的同步技术. Monitor类中有以下几个方法需要注意: Monitor.Enter(o ...

  9. [Android]检查当前手机是否有网络

    // Check network connection private boolean isNetworkConnected(){ ConnectivityManager connectivityMa ...

  10. monitor disk

    #!/bin/bash # #top #Big_USERS - find big disk space users in various directories ################### ...