java编译中说"类A是公共的,应在名为A.java的文件中声明"是怎能么回事?

如题所述

“类A是公共的,应在名为A.java的文件中声明”这句话需要分两步来理解:
1、如果类A被声明为公共的(public),那么必须将类A保存在名为A.java的文件中;
2、反之,在一个文件中最多包含一个顶级的公共类,并且该公共类的名字与文件名相同。比如文件A.java中,允许定义一个或多个类,但最多允许一个顶级的公共类,此类名为A。此处强调的顶级的意思是,允许非顶级的公共类存在,如内部公共类等。
温馨提示:内容为网友见解,仅供参考
第1个回答  2008-09-11
一个文件中最多只能有一个类是public的,这样可以暴露类的定义,方便其他类来访问!
如果已经有了这个公共的类 那么这个文件名必须和类名相同!
第2个回答  2008-09-11
这是你的命名错误
把文件名改为
A.java
因为你里面的类是
public class A{}
要不你把你这个公共的(public)去掉
要不就要和类名保持一致
第3个回答  2008-09-11
代码贴出来

...中说"类A是公共的,应在名为A.java的文件中声明"是怎能么回事?_百度...
1、如果类A被声明为公共的(public),那么必须将类A保存在名为A.java的文件中;2、反之,在一个文件中最多包含一个顶级的公共类,并且该公共类的名字与文件名相同。比如文件A.java中,允许定义一个或多个类,但最多允许一个顶级的公共类,此类名为A。此处强调的顶级的意思是,允许非顶级的公共类...

为什么JAVA程序在运行的时候总说类是公共的,请在文件中说明。
这是你的命名错误 把文件名改为 A.java 因为你里面的类是 public class A{} 要不你把你这个公共的(public)去掉 要不就要和类名保持一致

...是公共的, 应在名为 TestCalss.java 的文件中声明”
一般这个原因是公共类的类名和类文件明不一致造成的。你先确定自己公共类的类名和文件是一直。且文件中有且仅有一个pulic的class 然后放入D盘根目录再试试。

java 类是公共的,应在名为.java 的文件中声明
1、首先在电脑中打开新建的Java项目,新建一个package,在包中新建一个Java 类,如下图所示。2、定义抽象类User,包含了属性name、age;抽象方法write()。3、再创建一个子类Pstu,继承父类User,然后重写这些方法。4、最后在main主方法中,调用子类Pstu,然后依次调用方法write和drink,查看打印结果,如...

...是公共的,应在名为ArithmeticOperator.java的文件中声明_百度...
主类的名称必须与源文件的名称一致。

...是公共的,应在名为 Hellojava.java的文件中声明
你确定你的Java文件名和类名一致(包括大小写),我怎么觉得你在dos中把HelloJava中的J给小写了

JAVA中错误:类X是公共的,应在名为X.JAVA的文件中声明public class X ex...
你是将这三个类存在一个文件里了吧?这三个类MyFrame,Number,MyFrameDemo都被声明为public了,但一个文件只能有一个包含public类.所以,你要么将三个类存于三个文件,分别编译;要么将非主类去掉public修饰

...是公共的, 应在名为 Welcome.java 的文件中声明 public class Welcom...
引用:类Welcome是公共的, 应在名为 Welcome.java 的文件中声明 public class Welcome { 解析:这个错误是因为你的类名和你的*.java这个文件名不一样造成的。解决方法:这种错误解决有两种 你这个文件里的写的类这里的Welcome,那么必须和外部的文件名对应,包含该段代码的文件名就应该是Welcome.java ...

类ArrayCopy 是公共的, 应在名为 ArrayCopy.java 的文件中声明?
在一个.java中只能有一个public修饰的类 而且这个类就是文件名

...abc 是公共的,应在名为 abc.java 的文件中声明 public class abc...
1、Java文件名应与主类名字保持一致,也就是声明为public的类。2、命名不符合规范,类的首字母应大写。

相似回答