【问题标题】:why main method in static nested class runs instead of outer class? [closed]为什么静态嵌套类中的主方法运行而不是外部类? [关闭]
【发布时间】:2013-07-22 07:59:25
【问题描述】:

在给定的代码sn-p中,只运行嵌套静态类的main方法,不运行外部类的main方法。为什么会这样?


package pack;

public class MyOuterClass {
    public static void main(String[] args) {
        System.out.println("main method of Outer Class...");
    }

    static class MyInnerClass {
        public static void main(String[] args) {
            System.out.println("main method of Static Nested Class...");
        }
    }
}

【问题讨论】:

  • 什么运行就是你告诉java运行什么......这导致了一个问题:你如何运行你的程序?那应该会给你答案。
  • 你用什么命令行来运行它?
  • 在命令行中执行程序的命令中提供了哪个类作为 Main 类?

标签: java static nested-class


【解决方案1】:

这取决于你的命令:

java pack.MyOuterClass => 输出:外部类的main方法...

java pack.MyOuterClass$MyInnerClass => 输出:静态嵌套类的main方法...

【讨论】:

    【解决方案2】:

    命令java pack.MyOuterClass :- 外部类主方法 java pack.MyOuterClass$MyInnerClass:- 嵌套静态类主方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-08-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-20
      • 2018-09-26
      相关资源
      最近更新 更多