我正在尝试创建一个对象并将其添加到作为我构造的参数GUI对象创建的数组中。由于某些原因,我一直无法将TheDates解析为变量。
正在构造的对象:
public static void main(String[] args)
{
DateDriver myDateFrame = new DateDriver();
}
//Constructor
public DateDriver()
{
outputFrame = new JFrame();
outputFrame.setSize(600, 500);
outputFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
String command;
Date [] theDates = new Date[100]; //this is the array I am having issues with
int month, day, year;
...
}
这是我的theDates问题所在:
public void actionPerformed(ActionEvent e)
{ //The meat and Potatoes
if ( e.getSource() == arg3Ctor)
{
JOptionPane.showMessageDialog(null, "3 arg Constructor got it");
int month = Integer.parseInt(monthField.getText());
int day = Integer.parseInt(dayField.getText());
int year = Integer.parseInt(yearField.getText());
theDates[getIndex()] = new Date(month, day, year);//here is the actual issue
}
}
我不知道我是否想得太多,还是想什么,我尝试过将数组设为静态,公共等。我还尝试过将其实现为
myDayeFrame.theDates
。任何指导,不胜感激
最佳答案
您可能遇到范围问题。 theDates在构造函数中声明,并且仅在构造函数中可见。一种可能的解决方案:将其声明为类字段。当然可以在构造函数中对其进行初始化,但是如果在类中声明了它,则它在类中可见。