Java 类和文件的名称相同,为什么?
为什么我们必须保存一个与公共类的类名相同的文件Java 类和文件的名称相同,为什么?,java,Java,为什么我们必须保存一个与公共类的类名相同的文件 public class Indian{ public static void main (String args []){ System.out.println ("i am a programmer"); } } 这个类必须以名称Indian保存。为什么会这样,这是一个约定???因为它是Java编译器强加的约束。为什么会这样?为了秩序,很简单。想象一个有300个类的大型项目,所有这些类都包含具有不同名
public class Indian{
public static void main (String args []){
System.out.println ("i am a programmer");
}
}
这个类必须以名称Indian保存。为什么会这样,这是一个约定???因为它是Java编译器强加的约束。为什么会这样?为了秩序,很简单。想象一个有300个类的大型项目,所有这些类都包含具有不同名称的类 首先,这只适用于公共类;包私有类可以进入任何名称的文件。对于公共类,这是一种约定,与将文件放置在镜像包结构的目录中的做法相同,并使用
.java
扩展名
这样,Java编译器就可以在不检查文件夹中所有Java文件的情况下找到类
请注意,该约定不需要是通用的:Java提供了一个任何人都可以实现的标准,因此可以构建一个系统,将Java源文件放置在数据库或云中,而不是普通的文件系统中。这种Java实现的开发人员理论上可以提出完全不同的约定,或者根本不使用任何约定。查看这篇文章:如果是为了方便用户,那么编译器就不能给出错误……但它这样做了,这意味着这不是一种实践,而是由编译器强制执行的……它有什么技术逻辑吗?只是想说明300对于类的数量来说并不是那么大。想想大型项目有数千个类的项目。当然,如果这个简单的规则不适用的话,300个已经足够让你完全困惑了;)