java 8 正式发布,新特性全搜罗 -凯发k8国际

50顶
1踩

java 8 正式发布,新特性全搜罗

2014-03-19 09:34 by 副主编 wangguo 评论(28) 有52817人浏览
经过2年半的努力、屡次的延期和9个里程碑版本,甲骨文的java开发团队终于发布了java 8正式版本。



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

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

java 8的所有新特性及改进包括(jep全称为jdk enhancement proposal,jdk改进建议):

语言改进:

  • :lambda表达式 & 虚拟扩展方法
  • :基于autoconf的构建系统
  • :针对method handles的lambda形式的表征
  • :简洁的配置文件
  • :为模块化做准备
  • :利用cpu指令来改善aes加密的性能
  • :nashorn引擎,允许在java程序中嵌入js代码
  • :自动检测识别caller-sensitive方法
  • :jdk api变化和稳定性记录
vm基础改进:

  • :减少指定字段上的缓存争用
vm垃圾回收(vm/gc)改进:

  • :移除permanent generation(永久代)
  • :移除一些很少使用的垃圾回收器组合
vm运行时(vm/rt)改进:

  • :提供更多的验证错误信息
  • :减少类元数据封装
  • :支持创建小型虚拟机(3m以下)
  • :添加3个内存有序化的内联函数
核心基础(core)改进:

  • :命令行启动javafx应用
核心lang(core/lang)改进:

  • :目标类型推断
  • :java类型注解
  • :doctree api
  • :在javax.tools中添加javadoc
  • :移除apt(annotation-processing tool)
  • :运行过程中可访问参数名
  • :重复注解
  • :增强了javac,以改善构建速度
  • :doclint工具,用来检查javadoc注释内容
核心库(core/libs)改进:

  • :并行数组排序
  • :集合数据批量操作
  • :增强的包含lambda的核心库
  • :改进了字符集的实现
  • :core reflection提供的javax.lang.model实现
  • :base64编解码
  • :减少了核心库的内存占用
  • :日期时间api
  • :改进对并发的支持
  • :jdbc 4.2
  • :java.text.decimalformat.format优化
  • :静态链接的jni库
  • :使用平衡树处理频繁的hashmap碰撞
核心i18n(core/i18n)改进:

  • :改进了本地数据封装,采用unicode cldr数据
  • :bcp 47局部匹配
  • :unicode 6.2
核心net(core/net)改进:

  • :http url访问权限
核心安全(core/sec)改进:

  • :ms-sfu kerberos 5扩展
  • :tls server name indication(sni)扩展
  • :aead密码套件
  • :更强的口令加密系统算法
  • :可配置的安全随机数生成方法
  • :增强了证书撤回检测api
  • :加密算法实现
  • :sha-224消息摘要算法实现
  • :针对64位windows的sunpkcs11加密提供程序
  • :特权限制
  • :彻底检修jks-jceks-pkcs12密钥库
web/jaxp改进:

  • :jaxp 1.5(限制获取外部资源)
关于这些改进的详细信息可参阅:编程没有银弹:探讨 java 8 新增特性的优缺点

详细信息
jdk 8下载

同时发布的还有netbeans ide 8.0正式版本,新版本特性见:

关注iteye官方微博 ,获得更多更新资讯和社区精彩内容。
  • 大小: 14.3 kb
50
1
评论 共 28 条 请登录后发表评论
28 楼 随意而生 2014-04-10 19:02
27 楼 2014-04-02 21:21
ray_linn 写道
虚拟扩展方法语法太古怪了,比c#的扩展方法矬多了,平白增加了阅读上的晦涩。

确实,java8的接口纯洁性被破坏了,而且鸭梨山大啊(函数接口、default、静态实现方法)--抽象类在偷笑!
26 楼 2014-04-01 17:13
icefishc 写道
sayji 写道
aasddsasda 写道
有没有敢应用到生产环境的?
应该木有。至少一年后,可能新项目可以试水一下。

已经在用了。。。 一个小项目, 大概2周后上线。

我想是的,。即使有人在用,也大多数用的是jdk 8,但是里面的语法全部都是7以下,甚至是6以下
25 楼 2014-03-27 15:30
引用
引用
引用
24 楼 2014-03-21 18:02
sayji 写道
aasddsasda 写道
有没有敢应用到生产环境的?
应该木有。至少一年后,可能新项目可以试水一下。

已经在用了。。。 一个小项目, 大概2周后上线。
23 楼 2014-03-21 15:26
jdk5经典从这开始
22 楼 2014-03-21 12:34
等java9出来了,估计就开始用java8了
21 楼 white_crucifix 2014-03-21 00:53
操,一堆项目还在用java5
20 楼 2014-03-20 22:34
用jdk7,微信公众号开发地址验证通过。同样代码用jdk8 ea试,却不通过。好像加解密部份有区别
19 楼 2014-03-20 16:16
感谢分享~
18 楼 2014-03-20 16:01
移除permanent generation(永久代)
17 楼 2014-03-20 13:48
compact profile 是个很有意思的东西
16 楼 2014-03-20 11:14
半年以后稳定下来,就可以开始考虑使用jdk8了……
15 楼 wangguo 2014-03-20 09:58
关于这些改进的详细信息可参阅:编程没有银弹:探讨 java 8 新增特性的优缺点
14 楼 2014-03-19 22:40
aasddsasda 写道
有没有敢应用到生产环境的?
应该木有。至少一年后,可能新项目可以试水一下。
13 楼 2014-03-19 22:38
便秘这么久终于出来了!小白老鼠们出来测试吧!
12 楼 2014-03-19 21:20
hooluupig 写道
lambda不知道函数类型而是通过函数接口来实现,这点不爽。 也难为java了,包袱太重不敢迈开大的步子。

[纠正]不知道函数类型---->不支持函数类型。例如不能这么写:int y = () -> x*x;
11 楼 2014-03-19 21:11
lambda不知道函数类型而是通过函数接口来实现,这点不爽。 也难为java了,包袱太重不敢迈开大的步子。
10 楼 2014-03-19 18:05
虚拟扩展方法语法太古怪了,比c#的扩展方法矬多了,平白增加了阅读上的晦涩。
9 楼 2014-03-19 17:38
旧项目生产环境,呵,风险太大了吧,新项目还差不多。

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 经过2年半的努力、屡次的延期和9个里程碑版本,甲骨文的java开发团队终于发布了java 8正式版本。 java 8版本最大的改进就是lambda表达式,其目的是使java更易于为多核处理器编写代码;其次,新加入的nashorn引擎...

  • 经过2年半的努力、屡次的延期和9个里程碑版本,甲骨文的java开发团队终于发布了java 8正式版本。  java 8版本最大的改进就是lambda表达式,其目的是使java更易于为多核处理器编写代码;其次,新加入的nashorn引擎也...

  • 参考: java 8 centralhttps://www.oracle.com/java/technologies/java8.html ... java 8 特性 – 终极手册http://ifeve.com/java-8-features-tutorial/ java 8 中的 streams api 详解 https://developer.i...

  • 这里写自定义目录标题欢迎使用markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、...

  • java8的新特性。 jvm知识 什么情况下会发生栈内存溢出。 jvm的内存结构,eden和survivor比例。 jvm内存为什么要分成新生代,老年代,持久代。新生代中为什么要分为eden和survivor。 jvm中一次完整的gc流程是怎样的...

  • 初衷:在接到面邀请之后,面试过程就变成面试官...基于以上原因,本人计划搜罗网上优秀且全面的面试题库,用自己理解的话再叙述出来,用于自身成长。2021-4-29在两个月前开始写java面试基础篇,中途要备考所以搁浅了。

  • 自google在2009年发布go语言的第一个正式版之后,这门语言就以出色的语言特性受到大家的追捧,尤其是在需要高并发的场景下,大家都会想到是不是该用go。随后,在国内涌现出了一批以七牛为代表的使用go作为主要语言的...

  • 首先java基本功需要具备,所谓的基本功,不是简单的能写出代码,除了能写出来之外还要,在代码质量上面需要具体一定体现,比如对一些简单的多线程,以及常见的java框架有一定的修改,或者定制功能,工程中出现内存...

  • 光线追踪是一个学习新语言特别好的训练项目,它能囊括多种语言特性,又有性能要求,而且主要是数学计算,最后输出的是数字构成的列表/数组,几乎不需要使用其它 api,可以在多种环境里使用。 用 rust 实现光线追踪...

  • jdk1.4、jdk5.0、jdk6.0、 jdk7.0 新特性 http://blog.sina.com.cn/s/blog_4bb5650c0100gxo4.html 1.4版本特性  jdk1.4新特性之i/o apis篇 http://vvnet.javaeye.com/blog/463740  java nio原理和使用 ...

  • metaq支持两种消费模型:集群消费和广播消费 ,因为以前使用过的消费者模型都是用队列模型,当我第一次接触到这种发布订阅模型的时候还是被惊艳到了。 集群消费 订单创建成功后,发送一条消息给metaq。这条消息可以...

  • 作为最受欢迎的编程语言之一,java已经走过了20个年头。从已经落寞的诺基亚到现在火热的电商系统,我们都能看到java语言的身影。经过20年的历练,这门语言已经逐渐成熟,并经过很多大型系统的考验。社区关于这门语言...

  • 管理系统是一种通过计算机技术实现的用于组织、监控和控制各种活动的软件系统。这些系统通常被设计用来提高效率、减少错误、加强安全性,同时提供数据和信息支持。以下是一些常见类型的管理系统: 学校管理系统: 用于学校或教育机构的学生信息、教职员工信息、课程管理、成绩记录、考勤管理等。学校管理系统帮助提高学校的组织效率和信息管理水平。 人力资源管理系统(hrm): 用于处理组织内的人事信息,包括员工招聘、培训记录、薪资管理、绩效评估等。hrm系统有助于企业更有效地管理人力资源,提高员工的工作效率和满意度。 库存管理系统: 用于追踪和管理商品或原材料的库存。这种系统可以帮助企业避免库存过剩或不足的问题,提高供应链的效率。 客户关系管理系统(crm): 用于管理与客户之间的关系,包括客户信息、沟通记录、销售机会跟踪等。crm系统有助于企业更好地理解客户需求,提高客户满意度和保留率。 医院管理系统: 用于管理医院或医疗机构的患者信息、医生排班、药品库存等。这种系统可以提高医疗服务的质量和效率。 财务管理系统: 用于记录和管理组织的财务信息,包括会计凭证、财务报表、预算管理等。财务管理系统

  • gb2312字符集 作用:国家简体中文字符集,兼容ascii。 位数:使用2个字节表示,能表示7445个符号,包括6763个汉字,几乎覆盖所有高频率汉字。 范围:高字节从a1到f7, 低字节从a1到fe。将高字节和低字节分别加上0xa0即可得到编码。 gbk字符集 作用:它是gb2312的扩展,加入对繁体字的支持,兼容gb2312。 位数:使用2个字节表示,可表示21886个字符。 范围:高字节从81到fe,低字节从40到fe。 gb18030字符集 作用:它解决了中文、日文、朝鲜语等的编码,兼容gbk。 位数:它采用变字节表示(1 ascii,2,4字节)。可表示27484个文字。 范围:1字节从00到7f; 2字节高字节从81到fe,低字节从40到7e和80到fe;4字节第一三字节从81到fe,第二四字节从30到39。

  • 毕业设计,安卓app,基于java开发的学生成绩课件管理系统app,包括pc端和安卓anroid手机app,内含java完整源码 安卓andriod学生成绩课件管理系统 系统开发环境: windows myclipse(服务器端) eclipse(手机客户端) mysql数据库 服务器也可以用eclipse或者idea等工具,客户端也可以采用android studio工具! 系统客户端和服务器端架构技术: 界面层,业务逻辑层,数据层3层分离技术,mvc设计思想! 服务器和客户端数据通信格式:json格式,采用servlet方式 【服务器端采用ssh框架,请自己启动tomcat服务器,hibernate会自动生成数据库表的哈!】 hibernate生成数据库表后,只需要在admin管理员表中加个测试账号密码就可以登录后台了哈! 下面是数据库的字段说明: 班级: 班级编号,班级名称,开办日期,班主任 学生: 学号,登录密码,所在班级,姓名,性别,出生日期,学生照片,联系电话,家庭地址 老师: 教师编号,登录密码,姓名,性别,出生日期,联系电话,邮件,地址,

  • 管理系统是一种通过计算机技术实现的用于组织、监控和控制各种活动的软件系统。这些系统通常被设计用来提高效率、减少错误、加强安全性,同时提供数据和信息支持。以下是一些常见类型的管理系统: 学校管理系统: 用于学校或教育机构的学生信息、教职员工信息、课程管理、成绩记录、考勤管理等。学校管理系统帮助提高学校的组织效率和信息管理水平。 人力资源管理系统(hrm): 用于处理组织内的人事信息,包括员工招聘、培训记录、薪资管理、绩效评估等。hrm系统有助于企业更有效地管理人力资源,提高员工的工作效率和满意度。 库存管理系统: 用于追踪和管理商品或原材料的库存。这种系统可以帮助企业避免库存过剩或不足的问题,提高供应链的效率。 客户关系管理系统(crm): 用于管理与客户之间的关系,包括客户信息、沟通记录、销售机会跟踪等。crm系统有助于企业更好地理解客户需求,提高客户满意度和保留率。 医院管理系统: 用于管理医院或医疗机构的患者信息、医生排班、药品库存等。这种系统可以提高医疗服务的质量和效率。 财务管理系统: 用于记录和管理组织的财务信息,包括会计凭证、财务报表、预算管理等。财务管理系统

  • 软件开发设计:php、qt、应用软件开发、系统软件开发、移动应用开发、网站开发c 、java、python、web、c#等语言的项目开发与学习资料 硬件与设备:单片机、eda、proteus、rtos、包括计算机硬件、服务器、网络设备、存储设备、移动设备等 操作系统:linux、ios、树莓派、安卓开发、微机操作系统、网络操作系统、分布式操作系统等。此外,还有嵌入式操作系统、智能操作系统等。 网络与通信:数据传输、信号处理、网络协议、网络与通信硬件、网络安全网络与通信是一个非常广泛的领域,它涉及到计算机科学、电子工程、数学等多个学科的知识。 云计算与大数据:数据集、包括云计算平台、大数据分析、人工智能、机器学习等,云计算是一种基于互联网的计算方式,通过这种方式,共享的软硬件资源和信息可以按需提供给计算机和其他设备。

  • 企业定价策略分销策略与促销策略.docx

  • 管理系统是一种通过计算机技术实现的用于组织、监控和控制各种活动的软件系统。这些系统通常被设计用来提高效率、减少错误、加强安全性,同时提供数据和信息支持。以下是一些常见类型的管理系统: 学校管理系统: 用于学校或教育机构的学生信息、教职员工信息、课程管理、成绩记录、考勤管理等。学校管理系统帮助提高学校的组织效率和信息管理水平。 人力资源管理系统(hrm): 用于处理组织内的人事信息,包括员工招聘、培训记录、薪资管理、绩效评估等。hrm系统有助于企业更有效地管理人力资源,提高员工的工作效率和满意度。 库存管理系统: 用于追踪和管理商品或原材料的库存。这种系统可以帮助企业避免库存过剩或不足的问题,提高供应链的效率。 客户关系管理系统(crm): 用于管理与客户之间的关系,包括客户信息、沟通记录、销售机会跟踪等。crm系统有助于企业更好地理解客户需求,提高客户满意度和保留率。 医院管理系统: 用于管理医院或医疗机构的患者信息、医生排班、药品库存等。这种系统可以提高医疗服务的质量和效率。 财务管理系统: 用于记录和管理组织的财务信息,包括会计凭证、财务报表、预算管理等。财务管理系统

global site tag (gtag.js) - google analytics
网站地图