跟java有关的名字_类名与.java文件名的关系

本文介绍了.java文件中类名与文件名的关联规则,强调了public类必须与文件名一致的要求。每个.java文件可以包含多个类,但只有一个public类,且其名称应与文件名相同。非public类的文件命名则较为灵活,可以自由选择。main方法作为程序入口,并不影响文件命名,程序员在单元测试时会在多个类中添加main方法以方便测试。
摘要由CSDN通过智能技术生成

类名与.java文件名的关系

一个 .java 文件,可以有多个类,但是文件名只能有一个,用哪一个类名来充当文件名呢?

实文件名是无所谓的,因为将来用 javac 进行编译的时候,最终会生成多个 .class 文件,每一个类对应一个 .class

文件。运行时只要运行对应的 .class 文件就可以了,这时 .java 文件就显得没什么用了( 运行时不需要 ),那还管它叫什么名字。

是当你的类被 public 修饰时,此时文件名必须和该类保持一致(例如 public class A{} 只能放在 A.java

文件中,不然在用 javac 编译时会提示错误:类 A 是公共的,应在名为 A.java 的文件中声明)。也就是说在同一个 .java

文件中,不应该出现2个或2个以上的 public class 。如果有一个public class

类,就应该让文件名和此类名相同;那如果没有呢,即所有的 class

都没有修饰符,那么可以给该文件随便起名字,甚至可以不和任意一个类同名,哪怕是汉字名称都可以,但是后缀还是要有 .java 的 (

哈哈,不信就试试 ) 。

注:有很多初学者 ( 我也是 ) 可能会认为文件名应该也和 main

方法所在类有关系,其实不然。main 方法只是程序的一个入口,老师讲“一个程序只能有一个入口”,好象是在说只能有一个 main

方法,其实,只要你高兴,就可以在所有类里都写上 main 方法,给程序提供N多个入口,但是最后你运行程序的时候也只能从其中的一个入口进去,这就是

main 的作用( 程序入口 )。(这也就是为什么你会发现,程序员在做单元测试时,会往自己做的很多类里面添加 main

方法,因为他要为自己做的东西添加运行入口,从而能方便测试。)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值