如何在hackerearth问题中使用多个类

时间:2017-03-18 08:58:38

标签: java

我在日食中解决了hackerearth的问题。由于它包含不同的情况,我做了两个单独的类,它们工作正常但是当我在hackerearth编辑器上复制了这两个类时,它显示了这个错误

21:错误:类Challenge2是公共的,应该在名为Challenge2.java的文件中声明

3 个答案:

答案 0 :(得分:0)

某些ide,例如eclipse,并不介意在一个文档中有多个PUBLIC类。但是,有些ide一次只更喜欢每个文档一个PUBLIC类,并将其他公共类放在他们自己的文档文件(.java文件)上。我同时使用netbeans和eclipse。如果我声明两个或更多公共类但Netclipse没有,则Netbeans会抛出错误。所以在netbeans中我将一个类设为public,其他类默认为类Person,错误就消失了。因此,尝试将hackerearth编辑器作为公共类和其他类作为默认值,并查看错误是否消失...希望有帮助

答案 1 :(得分:0)

在java中,每个.java文件只能有一个公共顶级类,公共顶级类必须与源文件同名。

如果要将相关支持功能(内部数据结构,支持类等)与主公共类捆绑在一起,请在一个源文件中包含多个类。请注意,不执行此操作总是可以的 - 唯一的影响是代码的可读性(或不可读性)。

答案 2 :(得分:0)

如果文件名是公共的,则文件名必须等于类名

所以你应该保存

public class Challenge2
{

}

作为Challenge2.java