java - 不让我运行该应用程序

标签 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).

我不明白为什么它是错误的,因为主类位于启动类之外并且在扩展应用程序内部。这直接来自一本书,我只需要知道为什么它无法运行。

最佳答案

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

public class MyPearApp extends Application {

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

关于java - 不让我运行该应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26265622/

相关文章:

java - 尝试对 Arraylists 的 ArrayList 进行排序

java - 有没有办法强制 parallelStream() 并行?

java - 递归手动方式将int转换为字符串(没有数组,列表或解析内容),以获取正数和负数

java - 通用 map 打印功能

java - saveWebArchive() 不适用于 Android 4.0.3

java - Android:Firebase 数字增量

java - Spring Data JPA : query ManyToMany, 如何从映射的类获取数据?

java - 解析作为字符串注入(inject)的 htmlpage 吗? (字符串到 XML)

java - 条件 Bean 验证

java - postgres迁移错误;未终止的美元引号字符串