我陷入了一个我确信很容易克服的问题。主类用于构建 gui:
// AlladinLamp.java
package alladinlamp;
import javax.swing.table.*;
import javax.swing.*;
import java.awt.*;
class AlladinLamp {
int fnh;
ComboBox runners;
[ ...code ]
AlladinLamp() {
[ ...code ]
runners = new JComboBox( numberOfRunners );
runners.setMaximumRowCount(5);
runners.addActionListener( new ActionListener() {
@Override
public void actionPerformed( ActionEvent e ) {
String runnersNumber = ( String )runners.getSelectedItem();
fnh = Integer.parseInt( runnersNumber );
}
[ ...code ]
public int getFNH() { return fnh; }
[ ...code ]
SwingUtilities.invokeLater( new Runnable() {
@Override
public void run() {
AlladinLamp lamp = new AlladinLamp();
}
});
}
我希望能够从另一个文件中读取 fnh
package alladinlamp;
Class Processes {
int fullNH;
AlladinLamp lamp;
Processes() {
lamp = new AlladinLamp();
fullNH = lamp.getFNH();
[ ...code ]
}
[ ...code ]
}
但它没有发生( fnh = null )。整数是在它创建的同一个文件中读取的。我究竟做错了什么?任何帮助将不胜感激。