我有一个 Swing GUI,我使用 Netbeans 构建它,到目前为止,它使用静态引用与其他类进行通信。
+------------------------+ | MainClass (静态) | |-------------------------| +------+ -数据列表 +-----+ | | | | 静态| +-+--------------+-----+ |静态 参考 | | |参考 | |新 () | 新 () | | | | | | | | | +-+--------v----+ +--v------------+--+ | | | | | SwingGUI类 | | 执行类 | | | | | +---/\-----------+ +-----------------+ | 输入文件
(有关概述,请参阅此问题)我现在想摆脱静态引用并使用依赖注入。
public class SwingGUI extends javax.swing.JFrame {
private MainApp ma;
public SwingGUI(MainApp ma) {
this.ma = ma;
} [...]
我挣扎的一点是,GUI 作为线程启动,因此不能有任何参数。
[...]
//still in SwingGUI.class
/* Create and display the form */
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new SwingGUI().setVisible(true);
}
});
如何在不破坏代码的情况下注入依赖项?SO上涉及该主题的大多数问题都与Guice有关-在这一点上我不想使用它。
谢谢。