ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Java文件名要与public声明的类同名的原因

2021-11-24 20:32:29  阅读:119  来源: 互联网

标签:java 文件名 同名 编译器 Java 声明 public


Java文件名要与public声明的类同名的原因

在讨论这个问题之前,我想请大家思考一个问题。将声明的一个类用public修饰的意义在哪里?我相信很多朋友会想到访问、调用权限声明,public、private等是对其他类能否调用该类的明确界定,其作用是不言而喻的。那么这些与同名问题有什么关联呢?

未限定声明的类可在同一包中被调用,java程序编译时会将源文件生成以各自类命名的.class文件,因此在同一包中不能定义相同名称的类,否则会引发冲突,系统会报错。而声明为public的类可以被包外的类引用,只需要import 包名 文件名.java,就可以使用该类。这里我要指出:编译器在执行这条语句时会根据路径反向查找,而此时的文件名能帮助编译器快速定位所编译类的位置。想要快速实现这一过程,就需要遵循规则,而将声明的类与文件名同名,能很好地解决这一问题。同时,因为未限定声明的类不存在包外调用,所以其命名也能很随意,因为系统不需要花功夫查找它,只是在包内使用时进行遍历。

其实,我们可以把同名理解为规则,编译单元将public修饰符看做是一个java的公开接口,在对一个java程序编译前,会先检验该文件是否符合规范(规则是我只能接收一个或没有public修饰的类,其他的都不准通过!!!)当然,若编译器检查其符合规范且有public声明,为了提高效率,让编程员把该文件命名为与pubic 类同名的文件再好不过。

作者:秋灯锁忆
链接:https://www.jianshu.com/p/b08e56228d5f
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

标签:java,文件名,同名,编译器,Java,声明,public
来源: https://blog.csdn.net/weixin_44472932/article/details/121524033

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有