一个.java源文件中可以有多个类,但只能有一个public的类,并且public的类名必须与文件名相一致。一个文件中可以只有非public类。如果只有一个类,并且是非public的,此类可以跟文件名不同。
为什么一个Java源文件中只能有一个public类呢?
1.每个编译单元(文件)都只能有一个public类,这表示,每个编译单元都有单一的公共接口,用public类来表现。该接口可以按要求包含众多的支持包访问权限的类。如果在某个编译单元内有一个以上的public类,编译器就会给出错误信息。
2.public类的名称必须完全与含有该编译单元的文件名Java基础文件可以有多个类相同,包含大小写。如果不匹配,同样将得到编译错误。
3.虽然不是很常用,但编译单元内完全不带public类也是可能的。在这种情况下,可以随意对文件命名。
当一个Java源文件有多个类,并且都不是public类时,会出现什么情况呢?
此时程序编译通过,在相应路径下产生了多个.class文件(对应该源文件中类的数目)。直接点击运行,程序是不能运行的,需要鼠标右键点击程序然后选择Run As接着选择Java Aplication最后选择选数据来源运行,就可以了。
总结一下就是:
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.bianchenghao6.com/h6javajc/18794.html