Java 8 正式发布,新特性全搜罗
经过2年半的努力、屡次的延期和9个里程碑版本,甲骨文的Java开发团队终于发布了Java 8正式版本。
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)改进:
VM运行时(vm/rt)改进:
核心基础(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)改进:
核心net(core/net)改进:
- JEP 184:HTTP URL访问权限
核心安全(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 129:NSA 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(限制获取外部资源)
详细信息:http://openjdk.java.net/projects/jdk8/features
JDK 8下载:https://jdk8.java.net/
同时发布的还有NetBeans IDE 8.0正式版本,新版本特性见:NetBeans IDE 8.0 新特性一览
原文链接:http://www.iteye.com/news/28870-java-8-release
Java 8 正式发布,新特性全搜罗的更多相关文章
- Java 9和Java 10的新特性
http://www.infoq.com/cn/news/2014/09/java9 Java 9新特性汇总 继2014年3月份Java 8发布之后,Open JDK加快了开发速度, Java 9的发 ...
- [转] Java 8的新特性
简介 毫无疑问,Java 8是Java自Java 5(发布于2004年)之后的最重要的版本.这个版本包含语言.编译器.库.工具和JVM等方面的十多个新特性.在本文中我们将学习这些新特性,并用实际的例子 ...
- Java 8的新特性—终极版
作者:杜琪[译] 原文链接:http://www.jianshu.com/p/5b800057f2d8 1. 简介 毫无疑问,Java 8是Java自Java 5(发布于2004年)之后的最重要的版本 ...
- Atitit..jdk java 各版本新特性 1.0 1.1 1.2 1.3 1.4 1.5(5.0) 1.6(6.0) 7.0 8.0 9.0 attilax 大总结
Atitit..jdk java 各版本新特性 1.0 1.1 1.2 1.3 1.4 1.5(5.0) 1.6(6.0) 7.0 8.0 9.0 attilax 大总结 1.1. Java的编年史2 ...
- JDK 15 JAVA 15的新特性展望
目录 JEP 371: Hidden Classes JEP 372: 删除 Nashorn JavaScript Engine JEP 377: 新的垃圾回收器ZGC正式上线了 JEP 378: T ...
- Java最近版本新特性使用介绍
本文来自http://blog.csdn.net/liuxian13183/ ,引用必须注明出处! 在阅读<Thinking in Java>的过程中,并发这一章出现不少新特性,工作中也有 ...
- Java API —— JDK5新特性
JDK5新特性 自动拆装箱.泛型.增强for.静态导入.可变参数.枚举 1.增强for概述 1)简化数组和Collection集合的遍历 2)格式: ...
- Java SE 6 新特性: Java DB 和 JDBC 4.0
http://www.ibm.com/developerworks/cn/java/j-lo-jse65/index.html 长久以来,由于大量(甚至几乎所有)的 Java 应用都依赖于数据库,如何 ...
- Java SE 6 新特性: 对脚本语言的支持
2006 年底,Sun 公司发布了 Java Standard Edition 6(Java SE 6)的最终正式版,代号 Mustang(野马).跟 Tiger(Java SE 5)相比,Musta ...
随机推荐
- CSS在不同浏览器兼容问题,margin偏移/offset溢出等
margin在垂直取值时取最大值 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "h ...
- public,protected,friendly,private的访问权限
请说出作用域public,private,protected,以及不写时的区别 这四个作用域的可见范围如下表所示. 说明:如果在修饰的元素上面没有写任何访问修饰符,则表示friendly. 作用域 ...
- HDU 1280 前m大的数【哈希入门】
题意:中文的题目= =将各种组合可能得到的和作为下标,然后因为不同组合得到的和可能是一样的, 所以再用一个数组num[]数组,就可以将相同的和都记录下来 #include<iostream> ...
- BZOJ3218: a + b Problem
题解: 先做60分... 考虑最小割,连边容量为需要付出的代价.不妨设在s割为黑色,t割为白色. (s,i,b[i])(i,t,w[i]) 关于奇怪,因为不是按份数来的.所以我们这样建图: (i,i+ ...
- [反汇编练习] 160个CrackMe之004
[反汇编练习] 160个CrackMe之004. 本系列文章的目的是从一个没有任何经验的新手的角度(其实就是我自己),一步步尝试将160个CrackMe全部破解,如果可以,通过任何方式写出一个类似于注 ...
- AI 行为树
by AKara 2010-12-09 @ http://blog.csdn.net/akara @ akarachen(at)gmail.com @weibo.com/akaras 谈到游戏AI,很 ...
- erlang reduction
“首先明确一点,Erlang的process的调度是抢占式的,而非couroutine的协作式的.其次,Erlang早期版本是只有一个调度器,运行在一个线程上,随着erts的发展,现在erlang的调 ...
- poj 3260 The Fewest Coins
// 转载自http://blog.163.com/benz_/blog/static/18684203020115721917109/算法不难看出,就是一个无限背包+多重背包.问题在于背包的范围.设 ...
- Shell中取时间格式方法
Shell中取时间格式方法2007-09-13 15:35常用date的显示格式: date +%F //2007-03-06date +%Y%m%d//20070306 date +%T //23: ...
- Android 使用库项目时的一个特殊tip
前提: 项目A作为库项目被项目B引用,但是项目A中有自定义的控件和自定义的属性,当在项目B中使用自定义的属性时,编译时就会直接报错:No resource identifier found for a ...