[java] JDK9常用特性
JDK9新特性
- 模块系统
module com.mycompany.sample { exports com.mycompany.sample; requires com.mycompany.common; provides com.mycompany.common.DemoService with com.mycompany.sample.DemoServiceImpl; }
- JShell:交互式Java REPL
在 jshell 中添加方法
jshell> int add(int x, int y) { ...> return x + y; ...> } | created method add(int,int)
在 jshell 中使用创建的方法
jshell> add(1, 2) $19 ==> 3jshell> add(1, 2) $19 ==> 3
- 不可变集合类工厂方法(集合加强)
List.of(); List.of("Hello", "World"); List.of(1, 2, 3); Set.of(); Set.of("Hello", "World"); Set.of(1, 2, 3); Map.of(); Map.of("Hello", 1, "World", 2);
- 接口中的私有方法
public interface SayHi { private String buildMessage() { return "Hello"; } void sayHi(final String message); default void sayHi() { sayHi(buildMessage()); } }
- 进程API改进
增加了 ProcessHandle 接口,可以对原生进程进行管理,尤其适合于管理长时间运行的进程。
final ProcessBuilder processBuilder = new ProcessBuilder("top") .inheritIO(); final ProcessHandle processHandle = processBuilder.start().toHandle(); processHandle.onExit().whenCompleteAsync((handle, throwable) -> { if (throwable == null) { System.out.println(handle.pid()); } else { throwable.printStackTrace(); } });
- try-with-resources改进
- HTTP2支持
- 平台日志API和服务
新增的 System.LoggerFinder 用来管理 JDK 使 用的日志记录器实现。
public class Main { private static final System.Logger LOGGER = System.getLogger("Main"); public static void main(final String[] args) { LOGGER.log(Level.INFO, "Run!"); } }
- 垃圾回收器
- 增加加密算法
新增了 4 个 SHA- 3 哈希算法,SHA3-224、SHA3-256、SHA3-384 和 S HA3-512。另外也增加了通过 java.security.SecureRandom 生成使用 DRBG 算法的强随机数。
import org.apache.commons.codec.binary.Hex; public class SHA3 { public static void main(final String[] args) throws NoSuchAlgorithmException { final MessageDigest instance = MessageDigest.getInstance("SHA3-224"); final byte[] digest = instance.digest("".getBytes()); System.out.println(Hex.encodeHexString(digest)); } }
[java] JDK9常用特性相关推荐
- java高级特性2_Java高级特性 第2节 java中常用的实用类(1)
一.Java API Java API即Java应用程序编程接口,他是运行库的集合,预先定义了一些接口和类,程序员可以直接调用:此外也特指API的说明文档,也称帮助文档. Java中常用的包: jav ...
- [转]Java中常用的集合—初学者的你不可错过的精编整理
集合一直都是项目中非常常见的,我是一个Android开发者,集合对于我来说,在项目中使用的次数非常之多,因为使用的多,熟能生巧,所以这里呢!就给那些初学者整理一下Java当中常用的集合吧! 因为 ...
- Java程序员从笨鸟到菜鸟之(五)java开发常用类(包装,数字处理集合等)(下)...
本文来自:曹胜欢博客专栏.转载请注明出处:http://blog.csdn.net/csh624366188 写在前面:由于前天项目老师建设局的项目快到验收阶段,所以,前天晚上通宵,昨天睡了大半天, ...
- Java这个高级特性-泛型,很多人还没用过!
点击关注公众号,Java干货及时送达 泛型是 Java 的高级特性之一,如果想写出优雅而高扩展性的代码,或是想读得懂一些优秀的源码,泛型是绕不开的槛.本文介绍了什么是泛型.类型擦除的概念及其实现,最后 ...
- Java这个高级特性,很多人还没用过!
点击关注公众号,Java干货及时送达 泛型是 Java 的高级特性之一,如果想写出优雅而高扩展性的代码,或是想读得懂一些优秀的源码,泛型是绕不开的槛.本文介绍了什么是泛型.类型擦除的概念及其实现,最后 ...
- Swfit 常用特性(Attribute)关键字
Swfit 常用特性(Attribute)关键字 Swift中的Attribute相当于Java中的注解,但是可惜的是目前Swift不支持自定义Attribute Swfit的特性关键字一般用于声明或 ...
- java学习笔记(一) ----java下常用的包功能
***java下常用的包*** java.lang----包含一些java语言的核心类,如String,Math,Integer,System,Thread,提供常用的功能. java.awt---- ...
- Java程序员从笨鸟到菜鸟之(五)java开发常用类(包装,数字处理集合等)(下)
写在前面:由于前天项目老师建设局的项目快到验收阶段,所以,前天晚上通宵,昨天睡了大半天,下午我们宿舍聚会,所以时间有点耽误,希望大家见谅 上接: Java程序员从笨鸟到菜鸟之(四)java开发常用类( ...
- 动图 + 源码,演示 Java 中常用数据结构执行过程及原理
最近在整理数据结构方面的知识, 系统化看了下Java中常用数据结构, 突发奇想用动画来绘制数据流转过程. 主要基于jdk8, 可能会有些特性与jdk7之前不相同, 例如LinkedList Linke ...
最新文章
- 转: jdbc连接数据库需要注意和出错的地方
- 映射文件_Hibernate 映射文件
- web前端CSS2学习2017.6.22
- php 函数有命名空间吗_解析 ThinkPHP 的命名空间
- golang利用json.Unmarshal转json为map、slice类型
- 关于Oracle中的错误 「SQL*Loader-522: lfiopn failed for file (xxx.log)」
- cityengine导出fbx
- 【Jmeter测试】03—— post请求测试
- 传奇物品在地上显示,红字,自动拾取文件
- 无线RTU 数据采集 远程测控
- flash 加载外部flash怎么卸载干净
- 小程序如何跳转至同服务器app,小程序新功能,app可以直接跳转小程序
- 多媒体计算机软件按功能分为,多媒体软件可分为
- win的反义词_小学英语常见的英语单词反义词大汇总,一定要让孩子掌握!
- 破解“致得E6协同文档管理系统” 3.2.847版
- 山东养殖业稳中有升,饲料企业较乐观
- 姿态估计相比Mask-RCNN提高8.2%,上海交大卢策吾团队开源AlphaPose
- Ubuntu发烧友三部曲
- 东莞潇洒老师:分享PROE产品设计塑胶产品结构基本设计
- AI编译器XLA调研