00:00
呃,下边呢,我们来正式的讲解JAVA12当中的这些新特性,首先呢,我们进行一个概述,在美国当地时间是2019年的3月19号,诶北京时间呢是20号,这个JAVA12呢进行了一个发布,呃发布的话呢,官方说明了这样的一段话,哎,我们来一起看一看,说这个GDK12,呃,它是一个开源的实现啊说这个JDK12呢,是我们招SSE12这个版本12的一个开源的这个参考实现。啊,这个平台,然后呢,它是呃,作为这个Java community process以GS2386的方式呢,做了一个具体的指定,然后GDK12呢,嗯,它是在2019年的3月19号,可以全面的开放啊,Availability啊获取呃,这个产品的ready被准备好的这样的一些二进制的数据,诶可以通过Oracle官网呢进行一个获取啊等等,说这个特性呢。呃,这个版本的特性和它的时间表,嗯,是通过我们这个GP的这个进程进行提出和呃跟进的啊等等啊,就是主要我们看到就这个信息想会到呢,第一个就是我们提到的一个GDP12啊,就是我们JAVA12这个语言版本的一个具体的一个产品了。
01:16
然后呢,就是它的发布时间啊,看到了另外的话呢,就是我们看到JAVA12中的这些新的特性呢,都是以GP的方式呢进行提出的啊GPGP呢就是Java jdk enhancement proposals就是JDK的一个,哎,这个改进的提案啊,我们在这个JAVA12当中能够看到一共是有八个新的G1P,那这个呢,我们可以把下边这个链接,这个是从官网拿到的啊,这个链接大家可以呢放到我们这块啊,CTRLV。这个呢,就是官网列出来的,关于这个JDK12,我们也叫做JAVA12,它一共列出来的是有八个新的GP,当然这块我们想说明的就是新的特性,其实不管有八个啊,你能看我这个目录当中呢,其实也列举出来了,还有其他的一些相关的解读啊,是这样的,那么关于这八个的话呢,这就是我们看到的这个官网提供的啊,就是这八个啊,这就八个GP啊,那这八个呢,我们都会一一的给大家做一个讲解啊,然后呢,我们先整体上去说明一下,首先第一个啊,在这个189大家能看到这啊,你可以点开呢,看到关于我们第一个189这个特性的一个详情啊解释啊,这个网会稍微慢一点啊,这个我们就不等他了。
02:29
这个呢,提到一个新的叫呃,Garbage garbage collector,就是垃圾回收器,这个呢,我们称作叫这个,我还专门查了查这个单词呢,还比较难念,叫我。啊是美国的一个河流啊深啊,是一个第一暂停时间的垃圾回收器,这里提到一个叫暂停时间啊,一会儿我们具体展开的时候呢,给大家说明一下什么叫暂停时间啊,具体关于它的特性呢,大家可以打开这个链接,或者呢,就像刚才这块啊,我们点进来以后啊,就能看到关于这个深度啊,这个垃圾回收器的一个介绍。
03:01
然后第二个呢,叫做微基准套件啊,微基准的测试套件啊,这个干什么用呢?一会我们展开来说,下个呢就提到叫Switch表达式,Switch的话呢,是我们讲这个Java语言流程控制的时候,关于分支结构中的一种啊,另一种呢,就是if else了,这呢提到一个表达式的概念,属于一个预览版啊,这个我们一会展开来说,它属于一个新的语法,然后呢,接着呢叫GM的一个常量API。啊,常量API,然后下边呢说只提供呃一个啊叫R尺64的一个实现啊这个我们一会展开来说,然后下边呢,就提到默认的CDS的啊归档文件,这个CDS呢叫class data Sherry啊叫类数据的共享文件啊的归档问题啊这是它,然后在下边呢提到一个呃,G1混合的垃圾收集器的一个可终止。哎,能够让它是啊affordable就可终止的,诶,否则的话呢,如果我们超出了预定的这个暂停时间的话呢,这一垃圾回收器不可终止啊,这个呢,是一个关于垃圾回收器方面的一个改进啊,在下面呢,提到我们说这个J1的垃圾回收器,它可以呢,及时的去返回未被使用的这个内存啊,提交给谁呢?提交给我们的操作系统啊,就是这个344和346呢,都是针对于垃圾回收器进行一些改进。
04:20
行,这呢是我们提到这八个,然后我们在讲解完这八个之后呢,还会提一些其他方面的些解读,解读包括呢,新增加的一些项,这个移除的一些项和废弃的一些项,那移除呢,我们看到在呃JDK8及之前的版本当中,是不会有移除的API的啊,顶多呢是做了一个D牌KT的一个废弃的声明啊,那么在我们新的以时间驱动的版本当中,我们会看到有一些移出项啊,这个呢是不利于我们从旧版本切换到新版本的,嗯,整体来说的话呢,我们关于这个呃,任何一个JDK版本新特性,大家呢,应该从三个角度去看。哎,从三个角度去看,一个呢,属于语法层面的变化啊,语法层面的变化啊,比如说在我们JAVA12当中,我们看到语法层面的变化呢,主要体现的就是Switch表达式,以前呢,我们没有提到过表达式,呃,Switch表达式的一个概念啊,这属于新的语法,就好比是我们在JDK8当中,哎,大家呢,学到的这个叫拉姆的表达式。
05:22
啊,比如说这个方法引用构造器引用啊,数度引用,乃至于说呢,接口当中可以定义私有的方法和静态方,哎,默认方法和私有方法错了,默认方法和静态方法,这个私有的接口当中的私方法是在JDK9当中引进来的。啊,像刚才我说的这些呢,都属于这个语法层面的一些变化,这是大家第一个要关注的哈,语法层面,那么第二个啊,任何一个版本新特性我们关注的方面呢,就是说在API层面有哪些变化,那以前呢,我们关注的就是说增加了哪些API,哪些API呢,被depar的这个抛弃了,是吧?啊,那现在的话呢,我们看到不光有新增加的,有这个废弃的delicated的,还有一些被移除掉了啊这就是在API层面的一些变化,更多呢,可能我们关注的都是加了哪些API,你比如说我们在还是以账VA8这个版本为例,诶,我们能看到主要增加了像这个诶stream API。
06:19
哎,包括呢,我们提到那个option中那个类啊,用来解决控制人问题的,这呢都属于API层面的一些添加啊,那在我们JAVA12这个版本当中,关于API层面呢,能看到一个是GM的常量API,哎,还包括我们下边呢,这个支持数字格式化这块的,呃,String方法,File方法还等等这块呢,就提到了API层面的一些变化,诶大家呢,可以根据这个实际情况的需要啊,我们发现呢,这个新的API呢,如果更方便啊,你可以考虑呃升级我们的版本,诶这是这样的,然后第三个层面呢,这就提到性能的一个优化上,诶我们希望我们的Java程序呢,可以有更高效的方式啊,这个实现解释运行啊,同时的话呢,这个垃圾回收啊,这个尽可能的不要出现必要这个这个。
07:05
经常会报的一些相关的error啊,内存溢出了啊,这样问题呢,也尽可能的少出现,那么属于性能层面,那么性能层面呢,不得不说的就是叫垃圾回收器啊,那我们基本上也能看到,在每一个Java的版本更新当中都会提到啊,垃圾回收器的一些相关信息,不管他多也好少也好,一般都会提到的,那在我们JAVA12的版本当中,首先提到了一个新的叫深垃圾回收器。啊,同时的话呢,还提到了关于这个J的一个可中断,还有呢,它返还未使用的内存给操作系统啊这样的几个方面啊,包括呢,在其他的这个项当中也提到了关于ZJC啊,ZJC是在JDK11当中引进中的,引入的一个新的垃圾回收器啊,对他们进行的一些性能调优啊,进行的一些优化,这呢属于第三个层面,那么任何一个GDP版本的更新,大家都从这三个角度去看就可以了。好,这呢就是我们整体对JAVA12呢进行了一个概述。
08:02
嗯。
我来说两句