【问题标题】:Why can my main class not see its main method?为什么我的主类看不到它的主方法?
【发布时间】:2015-04-22 07:30:53
【问题描述】:

在我的 MergeSortMini Program 中,我的主类看不到或加载它的 main 方法。我没有在主类上方声明 mergesortmini 包,但这并没有在另一个程序中导致我的代码在没有包声明的情况下运行良好的问题。

这是我的 MergeSortMini 程序中的主类(这不会运行):

class MergeSortMini {
    public static void main(String[] a){
        MergeSort m = new MergeSort();
        m.init().sort().printData();
    }
}

这是我的 MergeSortProgram 中的主要课程(确实运行):

class MergeSortTest {
    public static void main(String[] args) {
        MergeSort m = new MergeSort();
        m.init().sort().printData();  
    }
}

为什么一个程序可以在没有包的情况下看到它的 main 方法,而另一个却不能?

附加信息:我的项目指定我不能使用包声明。

【问题讨论】:

  • 文件名是什么?
  • MergeSortMini.java 和 MergeSortTest.java 和 MergeSort.java 都在同一个目录吗?
  • 这是一个奇怪的项目规范
  • 尝试在类声明前添加public修饰符:public class MergeSortMini...
  • MergeSortMini 和 MergeSortTest 位于不同的目录中。我尝试添加一个公共修饰符,错误仍然存​​在。

标签: java class packages main


【解决方案1】:

一种可能的反应是“MergeSortTest”与“MergeSort”类在同一个包中。

如果“MergeSortMini”类在不同的包中,它将无法识别“MergeSort”类。

问候,

【讨论】:

  • 没有 MergeSortMini 在结构上与 MergeSortTest 相同。
猜你喜欢
  • 1970-01-01
  • 2016-05-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-11-06
  • 2015-09-26
  • 1970-01-01
相关资源
最近更新 更多