在Java中,java文件名应始终与公共类名相同。
首先编写Java程序时,它会保存为“ .java ”文件,编译时会形成字节代码,即“ .class ”文件,这样,如果我们使程序文件与该类相似,就会感到很舒服。让我们毫无歧义地理解。仅当class不公开时,才允许对文件名使用任何名称。对于公共类,我们不能使用其他文件名。
文件名必须与该文件中的公共类名称具有相同的名称,这是告诉JVM这是入口点的方式。
假设当我们创建一个其中驻留多个类的程序,并且在编译一个Java源文件之后,它将生成与驻留在我们程序中的类相同数量的.class文件。在这种情况下,我们将无法轻松识别需要由Java解释器解释的类以及包含程序入口点的类。
问题内容: 在Java中,文件名应与该文件中包含的文件名相同。为什么会有限制?它有什么作用? 问题答案: Java有一个有趣的方法:给程序员一个选择只能降低编程经验,而不必选择。 他们在很多地方都这样做。确保使用文件名和软件包,但不允许在文件中使用多个公共类(从来没有),不允许您在文件之间拆分类(该死,很难使用!),等等。 我真的希望他们走得更远。没有理由使用公共变量:我从来不需要一个变量,也从未
问题内容: 我有一个名为的文件temp.java。我写了下面的代码。为什么这样做? 为什么这不起作用? 问题答案: 在第一个示例中,您的类实际上被声明为“包私有”(没有修饰符),这意味着只有同一包中的类才能访问它。在第二个示例中,您已将其声明为public。 在这种情况下,编译器已经很好地满足了JLS。 JLS指出: 当程序包存储在文件系统中时(第7.2.1节),如果在文件中找不到由类型名加类型组
问题内容: 这是该Java文件的内容: 问题答案: 这些是保存匿名内部类的文件。 在你的示例中,包含一个顶级类(称为)和一个匿名内部类,它们将存储在中。 请注意,包含匿名内部类的文件的确切名称尚未标准化,并且可能会有所不同。但是实际上,除了这里描述的方案之外,我还没有看到其他方案。 的值特定主体也是匿名内部类: 枚举常量的可选类主体隐式定义了一个匿名类声明(第15.9.5节),该声明扩展了直接封闭
我试图编写一个程序,但遇到了以下编译器错误: 我已经检查了我的文件名,我的公共类与我的相同。java文件。 我怎么能解决这个问题? 这是我的代码:
问题内容: 在我的Java应用程序中,我使用第三方库。 但是,我发现有些奇怪,有一些嵌套的程序包,有些类的名称可能与程序包的名称相同。 恐怕我不清楚。这是一个例子: 包 在“ com.xx.a”内部有一个名为“ a”的类。 因此,如果我想将此类称为“ a” … 我写: 然后,IDE将认为我的意思是软件包“ com.xx.a.a”。 那我就不能打电话了。 我想知道为什么? 顺便说一句,图书馆提供者似
当我编译java程序时,我得到这个错误:class是公共的,应该在一个名为的文件中声明 这是我的java代码: