被public修饰的类名称须与文件名一致

创建工程L1,并创建一个Java程序Login1.java

查看工程文件夹目录

  • src目录:存放Java源程序,如Login1.java
  • bin目录:存放编译后生成的二进制文件,如Login1.class

  

尝试类名与文件名不同。

  把类名Login1改为Login,编译器会提示错误信息

  

原因:根据编码规范,被public关键字修饰的类名须与文件名一致

解决报错的方式有两种

  • 将类名改为与文件名相同
  • 将public关键字去掉,去掉之后再次编译(能编译,但会控制台会报错),bin目录下的原Login1.class会被覆盖为Login.class

    

总结:为什么被public关键字修饰的类名必须与文件名一致

  每个编译单元(文件)只能有一个public类。可以理解成,每个编译单元只能有一个公开的接口,而这个接口就由其public类来表示。而没有被public修饰的类都是为了给被public修饰的类做支撑的。从软件架构设计和安全性设计上得出的结论。或者说是java的设计者们从这方面的考虑。这是一个规范,如果public修饰的类名不用和文件名一直,(假设先后写了两个一样的public类名)就会导致后面的public类名回覆盖前面的public类名。

 

转载于:https://www.cnblogs.com/EaTerLeader/p/11077992.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值