Java SE 10 Application Class-Data Sharing 示例 作者:Grey 原文地址:Java SE 10 Application Class-Data Sharing 示例 Class-Data Sharing CDS 全称 Class-Data Sharing.主要是用来在不同的 JVM 中共享 Class-Data 信息,从而提升应用程序的启动速度. 通常来说,如果要执行 class 字节码,JVM需要执行下面的一些步骤:给定一个类的名字,JVM 需要从磁盘上…
Java SE 10 新增特性 作者:Grey 原文地址:Java SE 10 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new_features 类型推断 无需定义变量类型,通过var关键字结合初始化的值,可以推测出变量类型 package git.snippets.jdk10; /** * 类型推断 * * @author <a href="mailto:410486047@qq.com">Grey…
1.废话少说,要么百度JDK,要么直接点传送门http://www.oracle.com/technetwork/java/javase/downloads/index.html.这里需要说的JDK包含JRE,打个比方,JDK就是厨房,包含各种工具,而JRE是运行环境,就是锅.所以下载的话,直接下载最新JDK最好.然后根据你的系统位数选择版本.我的是64bit. 2.点击1的右边中间的[JDK download],在弹出界面点选[接受协议],然后选择最下方的windows平台的版本. 3.通常来…
Java SE 13 新增特性 作者:Grey 原文地址:Java SE 13 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new_features 新版 Switch 使用方式 switch语句增加了 yield 关键字表示返回值,这个特性在Java SE 13中是预览特性,在Java SE 14正式引入.代码如下: 注:如果你用Java SE 12运行上述代码,需要指定--enable-preview参数,如果使用 Int…
Java SE 17 新增特性 作者:Grey 原文地址:Java SE 17 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new_features Sealed Classes 正式启用 Sealed Classes 在 Java SE 15 和 Java SE 16 中都是预览功能, 在 Java SE 17 中成为正式功能. 示例代码: package git.snippets.jdk17; /** * 密封类(Seal…
Java SE 9 多版本兼容 JAR 包示例 作者:Grey 原文地址:Java SE 9 多版本兼容 JAR 包示例 说明 Java 9 版本中增强了Jar 包多版本字节码文件格式支持,也就是说在同一个 Jar 包中我们可以包含多个 Java 版本的 class 文件,这样就能做到 Jar 包升级到新的 Java 版本时不用强迫使用方为了使用新 Jar 包而升级自己的业务模块 Java 版本,也不用针对不同最低支持 Java 版本提供不同的 Jar,真正的做到了一个 Jar 包兼容所有的目的…
Java SE 9 模块化示例 作者:Grey 原文地址:Java SE 9 模块化示例 说明 Java SE 9引入了模块系统,模块就是代码和数据的封装体.模块的代码被组织成多个包,每个包中包含Java类和接口:模块的数据则包括资源文件和其他静态信息. 在module-info.java文件中,我们可以用新的关键词module来声明一个模块. Java 9将JDK划分为多个模块以支持各种配置.参考JEP 200: The Modular JDK 可以使用如下命令查询所有的模块(注:JDK 版本…
Java SE 9 新增特性 作者:Grey 原文地址: Java SE 9 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new_features JShell JShell是Java SE 9新增的一个交互式的编程环境工具.它允许你无需使用类或者方法包装来执行Java语句.它与Python的解释器类似,可以直接输入表达式并查看其执行结果. 在控制台输入jshell命令并回车,注:需要配置jdk的环境变量,jdk版本要大于或等…
Java SE 8 新增特性 作者:Grey 原文地址: Java SE 8 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new_features Lambda 表达式 Java 8里面最大的更新莫过于支持Lambda表达式,Oracle官网给了一个很好的示例说明,见:Lambda Expressions,以下来自这个官方示例说明. 假设我们定义一个Person类,属性如下 public class Person { publ…
Java SE 11 新增特性 作者:Grey 原文地址:Java SE 11 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new_features Lambda 类型推断 JDK 10引入了局部变量类型推理(JEP 286).这简化了代码,因为你不再需要明确说明局部变量的类型,而是可以使用var.JEP 323将这种语法的使用扩展到Lambda表达式的参数.这里有一个简单的例子. package git.snippets.j…