java如何从object1中创建的object2调用object1的方法
我目前正在做一个小的模拟项目,我创建了一个控制对象,它创建了几个帮助对象,并运行模拟或“游戏”循环。 其中一个帮助对象是GUI,我必须在其中实现影响游戏循环的按钮(暂停、继续、停止或重置)。 我不确定是否以及如何从帮助对象调用属于控件对象的方法
public static void main(){
first first = new first();
}
public class first(){
public first(){
second second = new second();
boolean loop = true;
while loop{
...
}
}
public void stop(){
this.loop = false;
}
}
public class second(){
public void actionPerformed(ActionEvent e) {
first.stop/ super.stop?
}
}
# 1 楼答案
让我们从第一原理来看这个问题
你需要什么,才能对一个对象调用一个方法?您需要对要调用方法的对象的引用
如果希望帮助对象调用控制对象上的方法,则帮助对象需要对控制对象的引用
如何在对象中设置值(或引用)?调用setter方法或在构造函数中传递值
TL;DR
因此,在构造助手对象时,传递对控制对象的引用,以便它们可以调用回控制对象
# 2 楼答案
Second
将需要对First
实例的引用,以便在该实例上调用方法。您可以在构造函数中提供:然后在创建实例时提供该引用: