gpt4 book ai didi

java - 成员对象调用类方法

转载 作者:行者123 更新时间:2023-12-01 17:00:41 24 4
gpt4 key购买 nike

我希望这个问题并不是现有问题的重复!我搜索后发现没有很好的答案来回答我的问题。这是:

我有一个 MyGame 类,其中包含一个 Button 成员对象。每当单击该按钮时,MyGame 就应该执行某些操作。

class MyGame extends Application {
MyBoard board = new MyBoard();
MyButton btn = new MyButton();

public MyGame() {
board.add(btn);
}

// this method should be called whenever the button is clicked!
public void doSomething() {
doingSomething();
}
}

class MyButton extends Button {
int someData;

// some code here

public MyButton() {
this.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent arg0) {
MyGame.doSomething(); // ==> NOT POSSIBLE!!!
}
});
}
}

界面是否是 MyButton 和 MyGame 之间进行通信的最佳方式?如果是这样,你会怎么做?

我不想将 MyGame 对象的引用移交给 MyButton 对象!我认为这不是解决这个问题的好方法。

感谢任何建议和帮助!

干杯

最佳答案

MyGame 的构造函数中,您可以向 btn 添加一个 ActionListener,当对按钮执行操作时将调用该监听器。

btn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// Insert thing to do within MyGame here
}
});

关于java - 成员对象调用类方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27846257/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com