我是JavaFX的新手。在我的以下代码中,getHBox()
是一种非静态方法,无需创建对象即可被访问。
public class Main extends Application {
public void start(Stage primaryStage) {
//Main m = new Main();
try {
BorderPane rootPane = new BorderPane();
rootPane.setTop(getHBox());
//rootPane.setTop(m.getHBox());
Scene scene = new Scene(rootPane,400,400);
scene.getStylesheets().add(getClass().getResource("application.css").toExternalForm());
primaryStage.setScene(scene);
primaryStage.show();
} catch(Exception e) {
e.printStackTrace();
}
}
public HBox getHBox()
{
HBox hb = new HBox(15);
hb.getChildren().add(new Button("Press"));
return hb;
}
public static void main(String[] args) {
launch(args);
}
}
现在,我已经查看了Stackoverflow中的答案。伙计们正在谈论有关班级成员的事情。 getHBox()
方法与任何其他方法有何不同?请提供一些解释或指导我找到合适的教程。
答案 0 :(得分:3)
在我的以下代码中,
getHBox()
是一种非静态方法,无需创建对象即可访问。
那是不正确的。如所提供的代码中所使用的,getHBox()
仅由start()
(另一种非静态方法)调用。作为实例方法本身,start()
必须在一个对象上被调用(例如,一个由JavaFX实例化的对象)。无需指定目标对象而对getHBox()
的调用隐式地指向同一对象,就像它是this.getHBox()
一样。
getHBox()
方法与任何其他方法有何不同?
从任何意义上讲,这都不是JavaFX特有的。