首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
java新特性系列
程序那些事
创建于2021-08-26
订阅专栏
java新特性系列文章
等 6 人订阅
共38篇文章
创建于2021-08-26
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
JDK16的新特性
在2021年3月16日,JDK的迎来了它的一个新版本JDK16,虽然JDK16不是LTS版本,但是作为下一个LTS版本JDK17的先行版本,JDK16为我们带来了17个方面的提升,包括了新的语言特性、
JDK8中的新时间API:Duration Period和ChronoUnit介绍
在JDK8中,引入了三个非常有用的时间相关的API:Duration,Period和ChronoUnit。 他们都是用来对时间进行统计的,本文将会详细讲解一下这三个API的使用。 Duration主要用来衡量秒级和纳秒级的时间,使用于时间精度要求比较高的情况。 可以看到,Dur…
JDK15真的来了,一起来看看它的新特性
一年两次的JDK最新版本JDK15在2020年9月15日正式发布了,这次的JDK15给我们带了隐藏类,EdDSA,模式匹配,Records,封闭类和Text Block等诸多新特性。 一起来看看吧。 RMI Activation被标记为Deprecate,将会在未来的版本中删除…
一文了解JDK12 13 14 GC调优秘籍-附PDF下载
一起来看看这期的GC调优秘籍,因为JDK12,13,14中的GC变化不太大,所以这里一起做个总结,文末附有相应的PDF下载,希望大家能够喜欢。 我们再讲几个之前的版本中没有讲过的比较好用的VM参数。 高级程序员一看到这个错误,就知道heap空间不够用了,加大heap空间吧。 带…
一张PDF了解JDK11 GC调优秘籍-附PDF下载
JDK11相比JDK10,添加了一个新的Source-File Mode,可以直接通过java来运行单个java源文件,而不需要进行编译。同时还提供了新的HTTP API,支持响应性stream。 当然上面的都不是重点,重点的是JDK11是一个LTS版本,是继JDK8之后的又一…
一张PDF了解JDK10 GC调优秘籍-附PDF下载
今天我们讲讲JDK10中的JVM GC调优参数,JDK10中JVM的参数总共有1957个,其中正式的参数有658个。 其实JDK10跟JDK9相比没有太大的变化,一个我们可以感受到的变化就是引入了本地变量var。 为了方便大家的参考,特意将JDK10中的GC参数总结成了一张PD…
一张PDF了解JDK9 GC调优秘籍-附PDF下载
今天我们讲讲JDK9中的JVM GC调优参数,JDK9中JVM的参数总共有2142个,其中正式的参数有659个。好像比JDK8中的参数要少一点。 为了方便大家的参考,特意将JDK9中的GC参数总结成了一张PDF,这个PDF比之前总结的JDK8的PDF在排版,颜色和内容准确性上面…
八张图彻底了解JDK8 GC调优秘籍-附PDF下载
JVM的参数有很多很多,根据我的统计JDK8中JVM的参数总共有1853个,正式的参数也有680个。 这么多参数带给我们的是对JVM的细粒度的控制,但是并不是所有的参数都需要我们自己去调节的,我们需要关注的是一些最常用的,对性能影响比较大的GC参数即可。 为了更好的让大家理解J…
小师妹学JVM之:JDK14中JVM的性能优化
上一篇文章我们讲到了JVM为了提升解释的性能,引入了JIT编译器,今天我们再来从整体的角度,带小师妹看看JDK14中的JVM有哪些优化的方面,并且能够从中间得到那些启发。 小师妹:F师兄,上次你给我讲的JIT真的是受益匪浅,原来JVM中还有这么多不为人知的小故事。不知道除了JI…
JDK14性能管理工具:jmap和jhat使用介绍
我们在写代码的过程中,经常会遇到内存泄露的问题,比如某个集合中的对象没有被回收,或者内存出现不明原因的增长。这些都是需要我们来定位的问题,我们可以使用jmap和jhat来对java程序中的内存对象进行分析。 jmap(Java Memory Map)是JDK自带的工具,用来将某…
JDK14性能管理工具:jstat使用介绍
作为一个程序员,经常会为如何定位java程序的问题或者去调优JVM性能而苦恼不已。也许你听过一些java的profile的强力工具,比如jprofile。但是这些工具大部分都是要收费的,对于我们个人程序员来说十分不友好。 其实JDK已经自带了很多优秀的性能调优工具,你可以在JA…
JDK14性能管理工具:jstack使用介绍
在之前的文章中,我们介绍了JDK14中jstat工具的使用,本文我们再深入探讨一下jstack工具的使用。 jstack工具主要用来打印java堆栈信息,主要是java的class名字,方法名,字节码索引,行数等信息。 jstack的参数比较简单,l可以包含锁的信息,e包含了额…
JDK14性能管理工具:Jconsole详解
我们在开发java项目的时候,或多或少都会去用到Java的性能管理工具。有时候是为了提升应用程序的性能,有时候是为了查找java应用程序的bug。 性能监控和调试工具在英文中叫做profile tool,提起这种工具大家可能会想到一些非常出名的jprofile等收费工具,其实J…
JDK9的新特性:JVM的xlog
在java程序中,我们通过日志来定位和发现项目中可能出现的问题。在现代java项目中,我们使用log4j或者slf4j,Logback等日志记录框架来处理日志问题。 JVM是java程序运行的基础,JVM中各种事件比如:GC,class loading,JPMS,heap,th…
JDK9的新特性:JPMS模块化
JDK9引入了一个新的特性叫做JPMS(Java Platform Module System),也可以叫做Project Jigsaw。模块化的本质就是将一个大型的项目拆分成为一个一个的模块,每个模块都是独立的单元,并且不同的模块之间可以互相引用和调用。 在module中会有…
JDK9的新特性:String压缩和字符编码
String的底层存储是什么?相信大部分人都会说是数组。如果要是再问一句,那么是以什么数组来存储呢?相信不同的人有不同的答案。 在JDK9之前,String的底层存储结构是char[],一个char需要占用两个字节的存储单位。 据说是JDK的开发人员经过调研了成千上万的应用程序…
JDK10的新特性:var和匿名类
匿名类相信大家都用过了,学过JDK8中的lambda表达式之后,可以发现有些匿名类是可以用lambda表达式来替代的,能够被替代的类叫做funcational interface。 具体的有关lambda表达式和匿名类的介绍,大家可以查阅我之前写的文章。这里就不多讲了。 本文主…
JDK10的新特性:var泛型和多个接口实现
在JDK10的新特性:本地变量类型var中我们讲到了为什么使用var和怎么使用var。 今天我们来深入的考虑一下var和泛型,多个接口实现的问题。 在JDK的实现和我们日常的工作中,很多时候都需要实现多个接口,我们举常用的两个例子ArrayList和CopyOnWriteArr…
JDK10的新特性:本地变量类型var
java以面向对象的特性显著于世并得到了蓬勃的发展。在语言的发展过程中,为了让java语言更加简洁和方便使用,JDK也在不断的进行改进。 今天本文将要介绍一下JDK10中引入的本地变量类型var。 类型推断是很多编程语言都具有的特性,编译器可以在我们不指定具体变量类型的情况下推…
JDK11的新特性:HTTP API和reactive streams
在JDK11的新特性:新的HTTP API中,我们介绍了通过新的HTTP API,我们可以发送同步或者异步的请求,并获得的返回的结果。 今天我们想探讨一下这些同步或者异步请求和响应和reactive streams的关系。 reactive streams的介绍大家可以参考re…
下一页