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

news/2024/9/23 6:26:33/

目录

    • 一、概述
    • 二、注意事项
    • 三、注意事项1——代码示例
      • 3.1、示例1
      • 3.2、示例2
      • 3.3、示例3
    • 四、注意事项2——代码示例
      • 4.1、示例1
      • 4.2、示例2

一、概述

  • 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命令进行运行,如下图所示:
    在这里插入图片描述

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


http://www.ppmy.cn/news/4526.html

相关文章

基于Java毕业设计新疆旅游专列订票系统源码+系统+mysql+lw文档+部署软件

基于Java毕业设计新疆旅游专列订票系统源码系统mysqllw文档部署软件 基于Java毕业设计新疆旅游专列订票系统源码系统mysqllw文档部署软件本源码技术栈: 项目架构:B/S架构 开发语言:Java语言 开发软件:idea eclipse 前端技术&a…

能够让你装逼的10个Python小技巧

列表推导式 你有一个list: bag [1, 2, 3, 4, 5] 现在你想让所有元素翻倍,让它看起来是这个样子: [2, 4, 6, 8, 10] 大多初学者,根据之前语言的经验会大概这样来做 bag [1, 2, 3, 4, 5] for i in range(len(bag)): bag[i] ba…

STM32 10个工程实战前言

从今年2022年元旦开通博客到现在基本接近一年了,真的会感到感觉时间飞逝,尤其当你全身心地投入一件工作上时,在FPGA基础篇和FPGA 20个经理例程篇后,又准备了STM32基础篇和STM32 10个工程实战篇,前两者即将收尾&#xf…

DCBC路由模式配置端口映射

DCBC路由模式配置端口映射 拓扑搭建 前提:使用DCBC、CS6200、两台PC机:一台用户配置IP另一台用于测试端口映射,外网环境使用192.168.19.0/24网段 网段划分 全网互通 1.DCBC对应工作模式配置 对应接口配置 配置静态路由两条,一条…

【Flink】Flink Starting Offset 启动消费位置 指定时间消费

文章目录 1.概述2.测试3.源码1.概述 首先参考文章:【Flink】Flink 1.14.0 全新的 Kafka Connector Kafka Source 能够通过指定 OffsetsInitializer来消费从不同偏移量开始的消息。内置的初始值设定项包括: KafkaSource.builder()// Start from committed offset of the co…

[hadoop全分布部署]安装Hadoop、验证Hadoop①

👨‍🎓👨‍🎓博主:发量不足 个人简介:耐心,自信来源于你强大的思想和知识基础!! 📑📑本期更新内容:安装Hadoop、验证Hadoop①&#…

【实时数仓】DWM层跳出明细计算之需求分析、读取数据、通过Flink的CEP完成跳出判断、写回kafka、测试

文章目录一 DWM层-跳出明细计算1 需求分析与思路(1)什么是跳出(2)计算跳出行为的思路(3)实现思路2 读取数据(1)代码编写(2)测试3 通过Flink的CEP完成跳出判断…

【学习】https://gitee.com/DingJiaxiong

【学习】https://gitee.com/DingJiaxiong 文章目录【学习】<https://gitee.com/DingJiaxiong>0 前言1 Java SE2 Java Web3 Maven基础4 Git5 SSM框架6 MybatisPlus7 SpringBoot0 前言 事情是这样&#xff0c;我准备把之前所有的笔记都放到Gitee 上了 不用GitHub … 就别问…