不会让我运行该应用程序

时间:2014-10-08 20:14:44

标签: java

package aaa;

import javafx.application.Application;

import javafx.scene.Scene;

import javafx.scene.control.Button;

import javafx.stage.Stage;

public class pear {

    public class aaa extends Application{
        @Override
        public void start(Stage primaryStage){
            Button okbt = new Button("ok");
            Scene scene = new Scene(okbt, 200,250);
            primaryStage.setTitle("n");
            primaryStage.setScene(scene);
            primaryStage.show();
        }
        public static void main(String[] args){
            Application.launch(args);
        }
      }
    }

这是我的教科书给我的代码示例,我尝试运行它,但它不会运行。这是错误:

Error: Main method not found in class aaa.pear, please define the main method as:
   public static void main(String[] args).

我不明白为什么它的错误,因为主类在start类之外和extends应用程序内部。这直接来自一本书,我只需要知道为什么它不会运行。

3 个答案:

答案 0 :(得分:3)

static方法只能在静态或顶级类中声明,而不能在非静态嵌套类中声明。在这种情况下,只使用后者更简单

public class MyPearApp extends Application {

   public static void main(String[] args){
    ...
   }
}

答案 1 :(得分:2)

您的main方法位于内部类(aaa)中。请尝试将其直接放在pear课程中。

答案 2 :(得分:0)

一切都应该在主要方法内:

例如:

public class pear {

    public static void main(String[] args) {

    //Logic and Everything else goes in here
}