类和文件的名称相同,为什么?

时间:2015-03-23 20:35:00

标签: java

为什么我们必须保存一个名称与公共类的类名相同的文件?

public class Indian{ 
     public static void main (String args []){
          System.out.println ("i am a programmer");
     }
}

这个类必须用名字Indian.Why保存。为什么这是一个约定?

2 个答案:

答案 0 :(得分:5)

因为它是Java编译器强加的约束。为什么会这样?对于订单,简单。想象一个包含300个类的巨大项目,所有类都包含不同名称的类。

答案 1 :(得分:2)

首先,这仅适用于公共课程; package-private类可以进入任何名称的文件。对于公共类,这是一个约定,与在镜像包结构的目录中放置文件以及使用.java扩展名相同。

这样做是为了使Java编译器可以在不检查文件夹中的所有Java文件的情况下查找类。

请注意,约定不需要是通用的:Java提供了任何人都可以实现的标准,因此可以构建一个系统,其中Java源文件放在数据库中或云中而不是常规文件中系统。理论上,这个Java实现的开发人员可以完全提出不同的约定,或者根本不使用任何约定。