随笔分类 -  jdk新特性

摘要:JEP 371:Hidden Classes(隐藏类) 该提案通过启用标准 API 来定义无法发现且具有有限生命周期的隐藏类,从而提高 JVM 上所有语言的效率。JDK内部和外部的框架将能够动态生成类,而这些类可以定义隐藏类。通常来说基于JVM的很多语言都有动态生成类的机制,这样可以提高语言的灵活性 阅读全文
posted @ 2020-10-28 23:54 天宇轩-王 阅读(263) 评论(0) 推荐(0) 编辑
摘要:JEP 360:Sealed Classes(Preview)密封的类和接口(预览) 通过密封的类和接口来增强 Java 编程语言,这是新的预览特性。 用于限制超类的使用,密封的类和接口限制其它可能继承或实现它们的其它类或接口。 这个特性的目标包括——允许类或接口的开发者来控制哪些代码负责实现,提供 阅读全文
posted @ 2020-10-20 23:22 天宇轩-王 阅读(190) 评论(0) 推荐(0) 编辑
摘要:Java的现状 2020 年是 Java 诞生的第 25 个年头。Oracle表示,目前java仍然流行编程语言,广泛使用在企业中。目前全世界有超过69%的专职开发人员使用Java,全世界有510亿台活动Java虚拟机(JVM)在部署中,目前Java主要被用于分析,数据管理,大数据,DevOps,移 阅读全文
posted @ 2020-10-20 22:40 天宇轩-王 阅读(1446) 评论(0) 推荐(0) 编辑
摘要:通过record增强Java编程语言。record提供了一种紧凑的语法来声明类,这些类是浅层不可变数据的透明持有者。 动机 我们经常听到这样的抱怨:“Java太冗长”、“Java规则过多”。首当其冲的就是充当简单集合的“数据载体”的类。为了写一个数据类,开发人员必须编写许多低价值、重复且容易出错的代 阅读全文
posted @ 2020-04-28 21:07 天宇轩-王 阅读(372) 评论(0) 推荐(0) 编辑
摘要:JEP 343: Java打包工具(孵化项目) 引入 该特性旨在创建一个用于打包独立Java应用程序的工具。Java应用的打包和分发一直是个老大难问题。用户希望Java应用的安装和运行方式和其他应用有相似的体验。比如,在Windows上只需要双击文件就可以运行。Java平台本身并没有提供实用的工具解 阅读全文
posted @ 2020-04-28 20:29 天宇轩-王 阅读(582) 评论(0) 推荐(0) 编辑
摘要:JEP 358: 友好的空指针异常 引入 NullPointerException是Java开发中经常会遇到的异常。在JDK 14之前的版本中,NullPointerException异常的消息只是简单的null,并不会告诉你任何有用的信息,只能根据异常产生的源文件的行号来查找。对于很长的引用链来说 阅读全文
posted @ 2020-04-27 22:38 天宇轩-王 阅读(543) 评论(1) 推荐(0) 编辑
摘要:JEP 361: Switch表达式 (标准) JEP 361: Switch Expressions (Standard) 引入 扩展switch分支选择语句的写法。Switch表达式在经过JDK 12 和JDK13的预览之后,在JDK 14中已经稳定可用。 设计初衷 Java的switch语句是 阅读全文
posted @ 2020-04-27 21:56 天宇轩-王 阅读(428) 评论(0) 推荐(0) 编辑
摘要:JEP 368: Text Blocks (Second Preview) JDK 13后的第二个预览版) 引入 在Java中,在字符串文字中嵌入HTML,XML,SQL或JSON片段"..."通常需要先进行转义和串联的大量编辑,然后才能编译包含该片段的代码。该代码段通常难以阅读且难以维护,因此,如 阅读全文
posted @ 2020-04-27 20:00 天宇轩-王 阅读(204) 评论(0) 推荐(0) 编辑
摘要:JEP 305: instanceof的模式匹配 (预览) 305: Pattern Matching for instanceof (Preview) 引入 JEP 305新增了使instanceof运算符具有模式匹配的能力。模式匹配能够使程序的通用逻辑更加简洁,代码更加简单,同时在做类型判断和类 阅读全文
posted @ 2020-04-27 11:05 天宇轩-王 阅读(313) 评论(0) 推荐(0) 编辑
摘要:Jdk14新特性概述 JEP 305: InstanceOf JEP 368: Text Blocks JEP 361: Switch表达式 JEP 358: 友好的空指针异常 Jdk14其他新特性 JEP 359: Records记录类型 (预览) 阅读全文
posted @ 2020-04-27 00:34 天宇轩-王 阅读(244) 评论(0) 推荐(0) 编辑
摘要:1.1 JDK 14详细概述 JDK 8 已经在 2014年 3月 18日正式可用,JDK 8作为长期支持(Long-Term-Support)版本,距离现在已经 5年多时间过去了。5年时间里很多企业也都换上了 JDK 8,2018年09月25日作为下一个LTS的JDK版本:JDK 11也应运而生, 阅读全文
posted @ 2020-04-27 00:31 天宇轩-王 阅读(1973) 评论(0) 推荐(0) 编辑
摘要:Comparator提供的方法 /** * @author WGR * @create 2020/4/13 -- 16:12 */ public class Person { private String name; private Integer age; private Double salar 阅读全文
posted @ 2020-04-13 18:02 天宇轩-王 阅读(4222) 评论(0) 推荐(1) 编辑
摘要:在Java 8中,Base64编码已经成为Java类库的标准。 Java 8 内置了 Base64 编码的编码器和解码器。 Base64工具类提供了一套静态方法获取下面三种BASE64编解码器: 基本:输出被映射到一组字符A-Za-z0-9+/,编码不添加任何行标,输出的解码仅支持A-Za-z0-9 阅读全文
posted @ 2020-04-08 21:33 天宇轩-王 阅读(657) 评论(0) 推荐(2) 编辑
摘要:重复注解的使用 自从Java 5中引入 注解 以来,注解开始变得非常流行,并在各个框架和项目中被广泛使用。不过注解有一个很大的限制是:在同一个地方不能多次使用同一个注解。JDK 8引入了重复注解的概念,允许在同一个地方多次使用同一个注解。在JDK 8中使用@Repeatable注解定义重复注解。 / 阅读全文
posted @ 2020-04-01 20:55 天宇轩-王 阅读(299) 评论(0) 推荐(2) 编辑
摘要:偶然之间发现的这个函数,感觉还是很有用的,尤其实在返回map的时候,value还为本身,用起来就很方便。 Java 8允许在接口中加入具体方法。接口中的具体方法有两种,default方法和static方法,identity()就是Function接口的一个静态方法。Function.identity 阅读全文
posted @ 2020-04-01 11:17 天宇轩-王 阅读(12839) 评论(1) 推荐(7) 编辑
摘要:旧版日期时间 API 存在的问题1. 设计很差: 在java.util和java.sql的包中都有日期类,java.util.Date同时包含日期和时间,而java.sql.Date仅包含日期。此外用于格式化和解析的类在java.text包中定义。2. 非线程安全:java.util.Date 是非 阅读全文
posted @ 2020-03-31 23:04 天宇轩-王 阅读(370) 评论(0) 推荐(2) 编辑
摘要:对比一下串行流和并行流的效率: /** * @author WGR * @create 2020/3/31 */ public class Demo07Parallel { private static final int times = 500000000; long start; @Before 阅读全文
posted @ 2020-03-31 18:16 天宇轩-王 阅读(376) 评论(0) 推荐(2) 编辑
摘要:Stream流中的结果到集合中Stream流提供 collect 方法,其参数需要一个 java.util.stream.Collector<T,A, R> 接口对象来指定收集到哪种集合中。java.util.stream.Collectors 类提供一些方法,可以作为 Collector`接口的实 阅读全文
posted @ 2020-03-27 00:50 天宇轩-王 阅读(281) 评论(0) 推荐(4) 编辑
摘要:Stream流式思想概述注意:Stream和IO流(InputStream/OutputStream)没有任何关系,请暂时忘记对传统IO流的固有印象!Stream流式思想类似于工厂车间的“生产流水线”,Stream流不是一种数据结构,不保存数据,而是对数据进行加工处理。Stream可以看作是流水线上 阅读全文
posted @ 2020-03-26 22:45 天宇轩-王 阅读(304) 评论(0) 推荐(4) 编辑
摘要:方法引用的格式 符号表示 : :: 符号说明 : 双冒号为方法引用运算符,而它所在的表达式被称为方法引用。应用场景 : 如果Lambda所要实现的方案 , 已经有其他方法存在相同方案,那么则可以使用方法引用。方法引用在JDK 8中使用方式相当灵活,有以下几种形式: 1. instanceName:: 阅读全文
posted @ 2020-03-25 13:05 天宇轩-王 阅读(584) 评论(2) 推荐(1) 编辑

点击右上角即可分享
微信分享提示