vlambda博客
学习文章列表

Github移动端,IDEA 2019.3.4,JDK 14,都发布了,赶快尝鲜

# Github for Mobile


大家一直等待的Github移动端终于发布了,同时支持安卓和iOS端。

体验了一下,界面相当的简洁,给人一种很清爽的感觉,分为主页、通知、搜索三个Tab,支持查看个人信息,对issue和pr进行回复和审核,浏览、搜索和查看项目,浏览最新通知等等

Github移动端,IDEA 2019.3.4,JDK 14,都发布了,赶快尝鲜




# IDEA 2019.3.4


17日,Jetbrains官方博客发布,IntelliJ IDEA 2019.3.4 稳定版已发布,这又是一个 bug-fix 版本,主要修复了以下问题:


  • 修复在 Project Tree 中显示异常的大字体和垂直间距:IDEA-231685

  • 修复切换分支后导致出现未解析符号的回归错误:IDEA-220511

  • 修复当 changeset 中只有已删除的文件时,"Commit files"菜单选项无法使用的问题:IDEA-225882

  • 使用 Git 进行 cherry-pick 时,自动打开的"Commit"对话框不再取消选择第一个文件:IDEA-228523.

  • 修复断点被 Android 应用程序忽略的问题:IDEA-228415


# JDK14 


17 日,JDK/Java 14 也正式 GA。

Github移动端,IDEA 2019.3.4,JDK 14,都发布了,赶快尝鲜

关于它有那些新特性,在之前的文章有所介绍,参考《

Github移动端,IDEA 2019.3.4,JDK 14,都发布了,赶快尝鲜

根据上图,我们知道,这个版本总共发布了 16 个新特性,分别如下:


305:Pattern Matching for instanceof (Preview)


为 instanceof 运算符引入模式匹配(预览阶段)


通过模式匹配,开发者可以用更简洁和更安全的方式来表达通用的程序逻辑。instanceof 运算符的模式匹配支持从对象中按条件来提取组件,此语言特性目前处于预览阶段。


343:Packaging Tool (Incubator)


打包工具(孵化阶段)


创建一个用于打包独立 Java 应用程序的工具。


345:NUMA-Aware Memory Allocation for G1


针对 G1 的 NUMA-Aware 内存分配


通过实现 NUMA-aware 内存分配,提升 G1 在大型机器上的性能。


349:JFR Event Streaming


JFR 事件流


暴露 JDK Flight Recorder 数据以进行连续监视。


352:Non-Volatile Mapped Byte Buffers

非易失性映射的字节缓冲


非易失性映射的字节缓冲将添加新的 JDK 特定文件映射模式,该模式允许 FileChannel API 用于创建引用非易失性内存(NVM)的 MappedByteBuffer 实例。


358:Helpful NullPointerExceptions


改进 NullPointerExceptions,通过准确描述哪些变量为 null 来提高 JVM 生成的异常的可用性。该提案的作者希望为开发人员和支持人员提供有关程序为何异常终止的有用信息,并通过更清楚地将动态异常与静态程序代码相关联来提高对程序的理解。


359:Records (Preview)


Records 提供了一种紧凑的语法来声明类,以帮助开发者写出更简洁的代码,这些类是浅层不可变数据(shallowly immutable data)的透明拥有者。该特性主要用在特定领域的类,这些类主要用于保存数据,不提供领域行为。


361:Switch Expressions (Standard)


Switch Expressions 在 JDK 12 与 13 中都是预览状态,现在在 JDK 14 中已成为稳定特性。switch 表达式扩展了 switch 语句,使其不仅可以作为语句(statement),还可以作为表达式(expression),并且两种写法都可以使用传统的 switch 语法,或者使用简化的“case L ->”模式匹配语法作用于不同范围并控制执行流。这些更改将简化日常编码工作,并为 switch 中的模式匹配做好准备。


362:Deprecate the Solaris and SPARC Ports


弃用 Solaris 和 SPARC 端口


弃用 Solaris/SPARC, Solaris/x64 和 Linux/SPARC 端口,以便在未来的版本进行移除。


363:Remove the Concurrent Mark Sweep (CMS) Garbage Collector


移除 CMS(Concurrent Mark-Sweep) 垃圾回收器。


364:ZGC on macOS


将 ZGC 垃圾回收器移植到 macOS。


365:ZGC on Windows


将 ZGC 垃圾回收器移植到 Windows。


366:Deprecate the ParallelScavenge + SerialOld GC Combination


弃用 ParallelScavenge + SerialOld GC 的垃圾回收算法组合。


367:Remove the Pack200 Tools and API


移除 Pack200 工具和 API


删除 java.util.jar 包中的 pack200 和 unpack200 工具以及 Pack200 API。


368:Text Blocks (Second Preview)


文本块特性(Text Blocks)与常见的 Python"any input"特性一样,它支持多行字符串文字,可以不需要使用大多数转义序列,并以一种可预测的方式自动设置字符串格式,同时可以让开发人员控制格式。虽然这不是特别复杂的特性,但对于开发中想将 HTML 代码引入 Java 来说是极大的便利,代码可读性也极大提高。目前处于第二个预览阶段。


370:Foreign-Memory Access API (Incubator)


外部内存访问 API(孵化阶段)


新增一个 API 以允许 Java 程序安全有效地访问 Java 堆之外的外部内存。


啥也不说了,赶快去尝鲜吧~~~


 往期推荐 

🔗




 

点击阅读原文,获得更多精彩内容