jdk11新特性——更简化的编译运行程序

Posted 小志的博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jdk11新特性——更简化的编译运行程序相关的知识,希望对你有一定的参考价值。

目录

一、概述

  • JEP 330 : 增强java启动器支持运行单个java源代码文件的程序。

  • 在我们的认知里面,要运行一个 Java 源代码必须先编译(javac命令),再运行(java命令),两步执行动作。而在未来的 Java 11 版本中,通过一个 java 命令就直接搞定了。

    // 编译
    javac Test1.java
    // 运行
    java Test1
    

二、注意事项

  • 执行源文件中的第一个类, 第一个类必须包含主方法。
  • 不可以使用别的源文件中的自定义类, 本文件中的自定义类是可以使用的。

三、注意事项1——代码示例

3.1、示例1

  • 示例代码

    public class Test6 
        public static void main(String[] args) 
            System.out.println("hello Test6");
        
    
    
  • 执行java命令进行运行,如下图所示:

  • 由上图输出可知:执行java命令可运行源文件中的第一个类, 第一个类必须包含主方法。

3.2、示例2

  • 示例代码

    public class Test6 
       
    
    
  • 执行java命令进行运行,如下图所示:

  • 由上图输出可知:执行java命令可运行源文件中的第一个类, 第一个类必须包含主方法。否则报错。

3.3、示例3

  • 示例代码

    /**
     * @description:
     * @author: xz
     */
    public class Test7 
        public static void main(String[] args) 
            System.out.println("hello Test7");
        
    
    public class Test6 
        public static void main(String[] args) 
            System.out.println("hello Test6");
        
    
    
  • 执行java命令进行运行,如下图所示:

  • 由上图输出可知:执行java命令可运行源文件中的第一个类(即Test7类), 第一个类(即Test7类)必须包含主方法。

四、注意事项2——代码示例

4.1、示例1

  • 示例代码

    /**
     * @description:
     * @author: xz
     */
    public class Test6 
        public static void main(String[] args) 
            System.out.println("hello Test6");
    		User user =new User();
        
    
    public class User
    	private String name;
    	private String age;
    
    
  • 执行java命令进行运行,如下图所示:

  • 由上图输出可知:本文件中的自定义类是可以使用的。

4.2、示例2

  • Test6.java文件示例代码

    /**
     * @description:
     * @author: xz
     */
    public class Test6 
        public static void main(String[] args) 
            System.out.println("hello Test6");
    		User user =new User();
        
    
    
  • User.java文件示例代码

    /**
    * @description:
    * @author: xz
    */
    public class User
    	private String name;
    	private String age;
    
    
  • 执行java命令进行运行,如下图所示:

  • 由上图输出可知:不可以使用别的源文件中的自定义类。

以上是关于jdk11新特性——更简化的编译运行程序的主要内容,如果未能解决你的问题,请参考以下文章

jdk11新特性——完全支持Linux容器(包括Docker)

jdk11新特性——完全支持Linux容器(包括Docker)

jdk 1.5 1.6 1.7 加入新特性

JDK11新特性解读

jdk11新特性——新加的一些更实用的API

jdk11新特性——新加的一些更实用的API