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应用程序内部。这直接来自一本书,我只需要知道为什么它不会运行。
答案 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
}