文件大小:
软件介绍
简介:
java13更新是继半年前java12这大版本发布之后的一次常规版本更新,在这一版中,主要带来了zgc增强、更新socket实现、switch表达式更新等方面的改动、增强。
java13新特性:
1、文本块
将跨越多行的字符串放入代码中一直是java的难点。现在,20多年后,我们终于得到了易于使用的多行字符串,称为文本块
2、从switch表达式返回值
在java12和13中引入了switch表达式。在12中,您将使用break定义返回值,java13中你需要使用yield
3、新的字符串方法
string有三种新方法:
string::stripindent的行为与编译器用于删除文本块缩进的算法相同。
类似地,string::translateescapes在转换字符串中的转义序列时公开编译器的行为。
string::formatted是重新实现静态方法string::format的实例方法。这意味着要调用“价值:%s”。formatted(value)等效于string。format(“value:%s”,value),但更方便一点。
4、zgc使用内存
oracle的z垃圾收集器(zgc)是一种可扩展的低延迟垃圾收集器,旨在满足独立于堆或实时集大小(从几百mb到几tb)的暂停时间,并保持在10 ms以下。在java 13中,堆大小可以是16 tb,zgc可以将未使用的内存返回给操作系统。命令行参数 - xx:zuncommitdelay = <秒>可以用于配置当发生这种情况。
然后有一个新的命令行标志 - xx:softmaxheapsize,通知垃圾收集器,试图限制堆到指定的大小。如果本来耗尽内存,它允许使用更多的内存,-xmx就应该可以很好地用于返回未使用的内存。
5、nio改进
在nioapi中有一些小的改进:
jdk-5029431:添加绝对批量放置和获取方法
jdk-8218418:文件。createsymboliclink应该使用symbolic_link_flag_allow_unprivileged_create
jdk-8215467:文件。是否隐藏应返回真正的windows上的隐藏目录
jdk-8218875:添加文件系统。newfilesystem(path,map<string,?>)方法
socket和serversocket重新实现
projectloom将引入光纤fibers(由jvm管理的轻量级线程),其中一部分是使块的所有代码采用相同的路径(因为这些路径随后被更改为不再阻塞线程)。
java中重要堵塞是在java.net.socket和java.net.serversocket下的类,它们的实现非常陈旧,并没有与loom的方法一致,因此在准备将来的更改时,此api已重新实现。这对我们来说不应该引起注意。
6、为appcds创建类数据存档
应用程序类-数据共享(appcds)在java10中免费提供,并在12和13中得到改进。它通过将大部分类加载工作移出来减少启动时间(减少10%到几乎50%)和响应时间异常值程序运行。appcds不是在需要时从jar加载类数据,而是准备一个不可变的归档文件,并在jvm启动时将其映射到内存中。(或“jvm”,因为存档可以在多个实例之间共享。)
在java10上,使用存档过去是一个三步过程:
创建要归档的类列表
创建档案
与存档一起发布
java12通过引入jvm附带并自动使用的jdk类的默认存档来放宽这一点。但您仍然必须完成上述步骤才能创建包含应用程序类的存档。这就是java13发挥作用的地方。
新的选项-xx:archiveclassesatexit告诉jvm照常运行,但退出(如果它没有崩溃),对类数据写入到指定的文件。
版权声明:
1 本站所有资源(含游戏)均是软件作者、开发商投稿,任何涉及商业盈利目的均不得使用,否则产生的一切后果将由您自己承担!
2 本站将不对任何资源负法律责任,所有资源请在下载后24小时内删除。
3 若有关在线投稿、无法下载等问题,请与本站客服人员联系。
4 如侵犯了您的版权、商标等,请立刻联系我们并具体说明情况后,本站将尽快处理删除,联系QQ:2499894784
点击加载更多评论>>