Sto creando una piccola applicazione che scrive per 5 volte l'ora corrente, composta da tre classi:
AppletClock
Clockcodice:import java.awt.*; import javax.swing.*; public class AppletClock { public static void main(String arg[]) { Clock calendarioEOrologio; calendarioEOrologio = new Clock(); calendarioEOrologio.start(); for(int i=0; i<5; i++) { System.out.println(calendarioEOrologio.oraEDataCorrente()); } } }
c'è anche una terza classe chiamata "OraEData" che funziona perfettamente (per semplificare il post l'ho omessa)codice:import java.util.*; public class Clock extends Thread { private static Calendar dataOdierna; private Calendar orario; private static String data; public Clock() { data = "NULL"; } public void run() { data = "Oggi è " + OraEData.ritornaNomeGiorno(); data = data + ", " + OraEData.ritornaNomeMese() + " " + OraEData.ritornaNumeroAnno(); data = data + "\n" + "Ora corrente: " + OraEData.oraH24(); try { Thread.sleep(1000); } catch(Throwable e) {} } protected String oraEDataCorrente() { String oraEData; oraEData = data; return data; } }
Solo che se faccio partire il programma, il thread non viene iniziato, tanto è vero che per 5 volte mi scrive "NULL".
In cosa ho sbagliato?![]()

Rispondi quotando
