繁体   English   中英

Java编译器找不到符号-同一包中的公共类

[英]Java compiler can not find symbol - public class in same package

我遇到了一个Main类的问题,即在同一文件夹和同一包中找不到另一个公共类。 这两个类均被命名为其文件。 这是似乎包含问题的部分:

接口:

package hanoi;

public interface Stack<E> {

...

}

超类:

package hanoi;

public class DefaultStack<E> implements Stack<E> {

...

}

Used类:

package hanoi;

public class HanoiStack extends DefaultStack<HanoiDisk> {

    public HanoiStack (int a){

        for (int b = a; b > 0; b--){

            HanoiDisk disk = new HanoiDisk(b);

            this.push(disk);

        }

    }
...
}

主类:

package hanoi;

public class TowersOfHanoi{

    HanoiStack stack1 = new HanoiStack(0);
    HanoiStack stack2 = new HanoiStack(0);
    HanoiStack stack3 = new HanoiStack(0);
...

}

文件目录(两个):

...\eclipse\Hanoi2\src\hanoi

Eclipse error: Main class could either not be found or not be loaded

(实际上,主类中有一个main方法,但是其余的代码变得非常复杂,现在似乎并不有趣)

Java Compiler error: could nor find symbol: class HanoiStack

另一个提示:我的一个朋友正在从事同一个项目,看来托尼已经宣布了与我相同的有趣部分,但没有任何问题。

更新:完整程序的下载链接在这里

看起来是Eclipse正在播放,还是由于某种原因无法编译类。

1)在Eclipse中清理项目。 (项目->清理->清理所有项目),然后重新启动Eclipse。

2)检查用于配置项目的文件夹是否可写。 要检查这是什么,请查看“源”选项卡下的项目构建路径(右键单击->构建路径->配置构建路径),然后检查输出文件夹。

如果这些都不帮助,您能否提供更多有关主类所在位置的信息。 例如,在TowersOfHanoi类中吗?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM