行业资讯 2025年08月6日
0 收藏 0 点赞 698 浏览 1296 个字
摘要 :

文章目录 一、JDK 21之前的main方法定义 二、JDK 21中main方法的新变化 三、JDK 21新特性的意义和影响 JDK 21新增的未命名类和实例main方法预览属性,尤其是在main方法……




  • 一、JDK 21之前的main方法定义
  • 二、JDK 21中main方法的新变化
  • 三、JDK 21新特性的意义和影响

JDK 21新增的未命名类和实例main方法预览属性,尤其是在main方法的定义上,发生了较大的变化。下面,我们就一起来深入讲解一下。

一、JDK 21之前的main方法定义

在JDK 21之前,我们定义main方法的方式大家都很熟悉,通常是像这样:

public class Test {
    public static void main(String[] args) {
        System.out.println(\"hello world\");
    }
}

在这段代码里,我们先定义了一个名为Test的公共类,然后在这个类里面定义了一个public static修饰的main方法。public表示这个方法是公共的,其他类可以访问;static表示该方法属于类本身,而不是类的某个实例。main方法是Java程序的入口点,程序从这里开始执行。当运行这段代码时,会在控制台输出“hello world”,同时可能会看到一些与虚拟机连接和断开相关的信息,比如:

Connected to the target VM, address: \'127.0.0.1:59811\', transport:\'socket\'
hello world
Disconnected from the target VM, address: 127.0.0.1:59811

二、JDK 21中main方法的新变化

到了JDK 21,main方法的定义方式变得更加简洁。现在,我们可以省略static关键字,像下面这样来定义:

class Test {
    void main() {
        System.out.println(\"hello world\");
    }
}

这里不再使用static修饰main方法,而是将其定义为一个普通的实例方法。这样做的好处是,对于初学者来说,少了static这个相对复杂的概念,理解起来更加容易。

进一步地,JDK 21还允许我们使用未命名的类来定义main方法,代码可以精简到这种程度:

void main() {
    System.out.println(\"Hello, World!\");
}

不过要注意,使用这种未命名类定义main方法时,前面的package声明需要去掉。这是因为未命名类没有明确的类名和包结构,与传统的Java类定义方式有所不同。

三、JDK 21新特性的意义和影响

以前的main方法声明,涉及到publicstatic等多个Java语法概念,对于刚接触Java的初学者来说,理解和掌握起来有一定难度。而JDK 21引入的未命名类和实例main方法,大大简化了main方法的定义形式。这不仅降低了初学者上手Java编程的门槛,还让代码看起来更加简洁明了。

目前,这个特性在JDK 21中还是预览状态,并在JDK 24之后进行了第四次预览。随着后续版本的不断优化和完善,相信它会在Java开发中得到更广泛的应用。

通过对JDK 21中未命名类和实例main方法的介绍,希望大家对Java的这一新特性有了更清晰的认识。在实际开发和学习过程中,大家可以尝试使用这种新的main方法定义方式。

微信扫一扫

支付宝扫一扫

版权: 转载请注明出处:https://www.zuozi.net/10533.html

管理员

相关推荐
2025-08-06

文章目录 一、Reader 接口概述 1.1 什么是 Reader 接口? 1.2 Reader 与 InputStream 的区别 1.3 …

988
2025-08-06

文章目录 一、事件溯源 (一)核心概念 (二)Kafka与Golang的优势 (三)完整代码实现 二、命令…

465
2025-08-06

文章目录 一、证明GC期间执行native函数的线程仍在运行 二、native线程操作Java对象的影响及处理方…

348
2025-08-06

文章目录 一、事务基础概念 二、MyBatis事务管理机制 (一)JDBC原生事务管理(JdbcTransaction)…

456
2025-08-06

文章目录 一、SnowFlake算法核心原理 二、SnowFlake算法工作流程详解 三、SnowFlake算法的Java代码…

517
2025-08-06

文章目录 一、本地Jar包的加载操作 二、本地Class的加载方法 三、远程Jar包的加载方式 你知道Groo…

832
发表评论
暂无评论

还没有评论呢,快来抢沙发~

助力内容变现

将您的收入提升到一个新的水平

点击联系客服

在线时间:08:00-23:00

客服QQ

122325244

客服电话

400-888-8888

客服邮箱

122325244@qq.com

扫描二维码

关注微信客服号