在OInnerDemo类中找不到的主要方法

时间:2018-02-16 10:14:09

标签: java eclipse

我正试图在eclipse中执行此代码。

class Outer {
  class Inner {
    int i = 10;
  }
}
class OInnerDemo {
  public static void main(String[] args) {
    Outer o = new Outer();
    Outer.Inner i = o.new Inner();
    System.out.println(i.i);
  }
}

但我收到一条错误消息:

  

错误:在OInnerDemo类中找不到主要方法,请定义   main方法为:public static void main(String [] args)或JavaFX   应用程序类必须扩展JavaFX.application.Application

但我在cmd中执行了相同的代码,输出为10。 为什么这段代码没有在Eclipse中执行?

1 个答案:

答案 0 :(得分:1)

您必须创建OInnerDemo嵌套类static,然后才能在Eclipse中启动main方法。

Inner Classes(非静态嵌套类)无法定义任何静态成员。

您可以详细了解差异here

  

内部课程

     

与实例方法和变量一样,内部类是关联的   使用其封闭类的实例并可直接访问它   对象的方法和字段。另外,因为内部阶级是   与实例相关联,它无法定义任何静态成员   本身。