这是一个面向调试的问题,但我一直很困惑为什么我的一些对象返回NULL值。访问类的字符串返回NULL
我这里有一个图形用户界面,单击按钮时,从文本字段使用字符串,
public class USAdditionalGUI extends javax.swing.JFrame {
public String AreaCode; // declare Strings
public String Exchange;
public String LastFour;
public String State;
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
// On button click use getText() to collect the strings from the
//`enter code here` fields and store them into the declared strings.
AreaCode = jTextField3.getText();
Exchange = jTextField1.getText();
LastFour = jTextField2.getText();
State = jTextField4.getText();
}
下一个类有获取每个字符串变量下的方法,在这里就是问题所在,我创建一个对象到GUI类并尝试访问字符串信息,但它在打印出来时会一直呈现为NULL。
public class TRFUSAddressFormatting{
private String State;
private String areacode; // 3 digits
private String digitExchange; // 3
private String lastfour; // 4
USAdditionalGUI usobj = new USAdditionalGUI();
public String getState(){
State = usobj.State;
System.out.println(State); // Why does this print NULL!!?!?!
return State;
}
}
我正确访问字符串吗?
看来你并不真正了解你的方法何时被调用。将代码添加到代码中,或者使用调试器并在每个方法的开始处放置一个断点,以了解代码的工作方式。当调用getState()时,按钮1还没有被点击,或者它已经在另一个USAdditionalGUI实例上被点击了。 –