我有一个 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有关-在这一点上我不想使用它。
谢谢。