Salve a tutti,
sto scrivendo il codice di una classe che aggiorna ad intervalli regolari la classe IPModel, che calcola l'evoluzione di un sistema dinamco.
codice:
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JFrame;
import javax.swing.Timer;
public class TimerSample {
private int timeStep = 100;
public static void main(String args[]) {
new JFrame().setVisible(true);
IPModel model = new IPModel();
ActionListener actionListener = new ActionListener() {
public void actionPerformed(ActionEvent actionEvent) {
System.out.println("Hello World Timer");
//model.update(timeStep/1000.0);
//model.toString();
}
};
Timer timer = new Timer(500, actionListener);
timer.start();
}
}
per adesso stampa soltanto la scritta hello world ogni mezzo secondo, pero io vorrei che invece di stampare la scritta mi esegua i due metodi della classe IPModel, ovvero update e toString, pero decommentando quelle due linee mi da i seguenti errori di compilazione:
codice:
TimerSample.java:19: non-static variable timeStep cannot be referenced from a st
atic context
model.update(timeStep/1000.0);
^
TimerSample.java:19: local variable model is accessed from within inner class; n
eeds to be declared final
model.update(timeStep/1000.0);
^
TimerSample.java:20: local variable model is accessed from within inner class; n
eeds to be declared final
model.toString();
^
3 errors
ho iniziato a studiare java giusto l'altro ieri quindi sarebbe meglio se non usaste metodi troppo complicati, comunque ho gia imparato un po di concetti di base del linguaggio quindi spero di riuscire a capirvi.