在java中,如何在另一个类中创建类的对象,反之亦然?
我设计了一个GUI,它有一个jTextArea。在这个类中,我可以很容易地将文本附加到这个类中。但我还想从其他类的方法中向其添加文本 为此,我将jTextArea公开,并在另一个类中创建该类的对象。现在我可以在执行其他类中的方法时写入jTextArea在java中,如何在另一个类中创建类的对象,反之亦然?,java,Java,我设计了一个GUI,它有一个jTextArea。在这个类中,我可以很容易地将文本附加到这个类中。但我还想从其他类的方法中向其添加文本 为此,我将jTextArea公开,并在另一个类中创建该类的对象。现在我可以在执行其他类中的方法时写入jTextArea 但事实证明,我需要一个类的方法,我在GUI类中创建了一个对象。当我这么做的时候,StackOverflower错误发生了。我该怎么办?在AutomatedActions类中,不必使用new关键字初始化BTDBattletsbot对象,而可以添加一
但事实证明,我需要一个类的方法,我在GUI类中创建了一个对象。当我这么做的时候,StackOverflower错误发生了。我该怎么办?在
AutomatedActions
类中,不必使用new
关键字初始化BTDBattletsbot
对象,而可以添加一个参数化构造函数,该构造函数将BTDBattletsbot
对象作为参数,并在此构造函数中初始化对象。像下面这样
public class AutomatedActions {
...............
private final BTDBattlesBot botWindow = null;
// Below is the parametrized constructor
public AutomatedActions(BTDBattlesBot botWindow) {
botWindow = this.botWindow;
}
..........
}
然后在btdbattletsbot
类中,在创建AutomatedActions
类的对象时,调用新创建的参数化构造函数,并使用this
关键字传递btdbattletsbot
类的当前对象,而不是调用默认构造函数。通过这样做,你应该能够实现你想要的
class BTDBattlesBot {
......
AutomatedActions action = new AutomatedActions(this);
......
}
将第一个类的引用传递给第二个类的构造函数,并保存该引用。我不是java的专家。你能告诉我如何保存参考资料吗。。。?谢谢。既然你已经有了一个JTextArea实例,为什么还要创建另一个呢?@AmanChhabra,我在AutomatedActions类中没有一个JTextArea实例,它也在另一个包中。。。