Java | Java中与文件同名的类的构造函数的调用

在Java的学习过程中遇到了这样一段代码:

public class Test1 {int a=1;public static void main(String []args){System.out.println("java");}public Test1(){System.out.println("构造函数");}
}

它的运行结果是这样的,构造函数中的语句并没有被执行:
0
这是因为运行 Java 程序时,Java 虚拟机 (JVM) 将只自动调用您指定为入口点的类的 main 方法。类的构造函数不会被调用,除非显式地创建该类的对象,并在 main 方法或其他方法中调用构造函数。
正确示例如下:

public class Test1 {// Constructorpublic Test1() {System.out.println("Constructor is called");}// Main methodpublic static void main(String[] args) {System.out.println("Main method is called");// Creating an object of MyClassTest1 myTest = new Test1();// Other code...}
}

在这个示例中,main 函数将第一个被执行,它明确地使用构造函数创建了一个Test1对象。这时构造函数被调用。

因此,在运行Java程序时,构造函数不会被自动调用,它需要通过创建类的实例来调用。
结果如图所示:
1


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/504218.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【kubernetes VPA】记录一次安装 VPA 相关组件的报错解决过程

文章目录 1. 问题描述2. 问题原因3. 解决办法4. 参考链接 1. 问题描述 在执行 ./hack/vpa-up.sh脚本命令时,提示有报错。名为vpa-admission-controller的容器状态一直停留在ContainerCreating,从该Pod详细描述中得知,volume "tls-certs…

面向企业的人脸特效SDK解决方案

随着科技的进步和消费者对高质量体验的需求增加,人脸特效技术已经逐渐渗透到各个领域,包括社交媒体、游戏、广告、影视制作等。为了满足这一需求,美摄科技推出了一款高效、稳定且易于集成的人脸特效SDK解决方案。 美摄科技的人脸特效SDK解决…

自动化测试工具:Python脚本(超详细)

🍅 视频学习:文末有免费的配套视频可观看 🍅 关注公众号【互联网杂货铺】,回复 1 ,免费获取软件测试全套资料,资料在手,涨薪更快 快速、高效的测试工具及脚本,能使程序猿的开发工作事…

AI时代编程新宠!如何让孩子成为未来的编程大师?

文章目录 一、了解编程的基础概念二、选择适合的编程工具三、激发孩子的兴趣四、注重基础能力的培养五、提供实践机会六、鼓励孩子与他人合作七、持续支持与鼓励《信息学奥赛一本通关》本书定位内容简介作者简介目录 随着科技的迅猛发展,编程已经从一种专业技能转变…

springboot,druid动态数据源切换

关键字:springboot,druid数据库连接池,两个数据源(可以切换成多个),事务管理 关于druid简介传送门:https://github.com/alibaba/druid/wiki/%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98 具体分为四…

银行间报价方式

一、对话报价 一方发起:录入 交易前台系统有个窗口,你看就长这个样子。 现券买卖窗口 点右键,出现新对话报价 下面这就是对话报价窗口 【买入】和【卖出】只能点一个。 对手方栏、交易员栏填一个不存在的机构,是填不进去的。…

SpringCloud微服务-Docker基本操作

Docker基本操作 文章目录 Docker基本操作1、镜像操作命令1.1、从DockerHub中拉取一个镜像并且查看1.2、镜像的导出和导入 2、容器相关命令2.1、创建运行一个Nginx容器2.2、进入容器,并且修改容器中的文件 3、数据卷3.1、操作数据卷命令3.2、案例实战-创建数据卷3.3、…

李沐动手学习深度学习——3.7练习

尝试调整超参数,例如批量大小、迭代周期数和学习率,并查看结果。 num_epochs 10, batch_size 256, lr 0.1情况下 num_epochs 5, batch_size 256, lr 0.1情况下 可以尝试一下,三种参数变…

Springboot接口参数校验

在设计接口时我们通常需要对接口中的非法参数做校验,以降低在程序运行时因为一些非法参数而导致程序发生异常的风险,例如登录的时候需要校验用户名密码是否为空,创建用户的时候需要校验邮件、手机号码格式是否准确。如果在代码中对接口参数一…

html5新增标签+css3新增标签

新增标签 一.html5新增标签1.语义化标签2.多媒体标签(1)视频video(2)音频audio3.总结 3.input属性![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/f0795316d5f2418fb04e43e9af3e3a27.png#pic_center)4.表单属性![在这…

vs code更新后json文件无法识别通配符 ,编译多文件失败的解决办法

问题描述 在Mac或者LInux上,进行C/C相同路径下进行多文件编译时,之前设置好的json文件突然不能解释通配符,并且将带有单引号的地址传给clang,由于*.c被扩在单引号中,clang找不到文件导致失败。 如果将命令端中的指令复…

node.js 用 xml2js.Parser 读 Freeplane.mm文件,生成测试用例.csv文件

Freeplane 是一款基于 Java 的开源软件,继承 Freemind 的思维导图工具软件,它扩展了知识管理功能,在 Freemind 上增加了一些额外的功能,比如数学公式、节点属性面板等。 编写 mm_xml2js_csv.js 如下 // 用 xml2js.Parser 读 F…