Я довольно новичок в ООП, использую Java, и я учусь по ходу дела, во многом благодаря этому сообществу.
Я создал программу, которая использует один объект для повторения задачи, котораячитает из листа Excel снова и снова и извлекает данные оттуда.
Я хотел бы знать, каковы наилучшие практики для инициализации этой задачи снова и снова, чтобы я не получал индексы за пределами границ массивов и других ошибок переменных?
Воткод потока, который я использую, чтобы обновить графический интерфейс (и чтение из файла снова и снова).Как вы можете видеть, он вызывает некоторые методы из другого класса.Когда эти методы вызываются - локальные переменные и индексированный массив уже содержат некоторые данные из предыдущей итерации:
public void check() {
Thread check = new Thread() {
public void run() {
for (;;) {
EventQueue.invokeLater(new Runnable() {
public void run() {
// Update GUI here on EventQueue.
try {
Task.readTasks();
} catch (InvalidFormatException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
label.setText("Next Task Is: " + Task.printNextTask);
}
});
try {
Thread.sleep(5000);
} catch (InterruptedException ie) {
break;
}
if (killcheck)
break;
}
}
};
check.start();
}
public void stopChecking() {
killcheck = true;
}
}