已有类之间的通信

时间:2017-03-10 21:04:54

标签: java swing jframe

我很抱歉,如果这个问题看起来很基本,并且已经有了答案,但除非我把它变成一个正确的问题,否则google将无法找到它。

我有一个JFrame的主类(只有一个对象,我们称之为“main”),它创建并调用另一个JFrame类(让我们称之为window2),但是,我仍然需要这个window2从已有的主类调用方法。通常window2会有类似Main mainMenu = new Main();. 但是这显然创建了一个main的新对象,我仍然想要引用已经存在的对象并从中获取信息。

1 个答案:

答案 0 :(得分:1)

依赖注入。答案取决于您的Main类是静态的,但是假设它不是:

  • 在Window2中创建一个主引用:Main main;
  • 在Window2中创建一个方法:public void injectMainInstance(Main main){this.main = main}
  • 在Main中,您有Window2实例window2。调用window2.injectMainInstance(this);

你应该很高兴现在使用main.mainMethodTBUsed()进入Window2;