Calendar bzw. GregorianCalendar Klasse

Status
Nicht offen für weitere Antworten.

chehilbi

Mitglied
Hallo zusammen,

ich verzweifele gerade an der Calendar bzw. GregorianCalender Klasse. Ich erzeuge zwe GregorianCalendar
Objekte. Dem timestamp Objekt weisse ich eine feste Sekundenanzahl zu mit Hilfe des zweiten Objektes.
Danach mach ich ein sleep von 5 Sek und geben die beiden Sekundenzahlen aus. Beide sind seltsamerweise
gleich. Das kann doch nicht sein. Die Sekunden vom cal Objekt müssten doch 5 Sek weiter fortgeschritten sein.
Sinn und Zweck soll eine Art Timestamp sein. Kann mir jemand helfe? Danke!

[HIGHLIGHT="Java"]Calendar timestamp = new GregorianCalendar();
Calendar cal = new GregorianCalendar();

timestamp.set(Calendar.SECOND, cal.get(Calendar.SECOND));

try {
Thread.sleep(5000);
}
catch(Exception e) {
System.out.println(e);
}

System.out.println("timestamp:" + timestamp.get(Calendar.SECOND));
System.out.println("aktuelle Zeit:" + cal.get(Calendar.SECOND));[/HIGHLIGHT]
folgende Ausgabe:

Code:
timestamp:40
aktuelle Zeit:40
 
Zuletzt bearbeitet von einem Moderator:

Sempah

Bekanntes Mitglied
Ich glaube er nimmt die Zeit (Sekunden), wo das GregorianCalendar Objekt instanziiert wird.
Versuch mal folgendes:

Code:
		GregorianCalendar cal1 = new GregorianCalendar();
		System.out.println(cal1.get(Calendar.SECOND));

		try {
			Thread.sleep(2000);
		} catch (Exception e) {
			System.out.println(e);
		}

		GregorianCalendar cal2 = new GregorianCalendar();
		System.out.println(cal2.get(Calendar.SECOND));
 
Zuletzt bearbeitet:

chehilbi

Mitglied
ich denke du hast recht. Die Uhrzeit wird beim initialisieren des Objektes gesetzt. Dann ist es ja gar
nicht möglich mit nur einem Objekt, immer wieder die aktuelle Uhrzeit abzurufen. Ist das möglich.
Oder gibt es eine Methode um die Uhrzeit neu zu laden?

[HIGHLIGHT="Java"]GregorianCalendar cal1 = new GregorianCalendar();
System.out.println(cal1.get(Calendar.SECOND));

try {
Thread.sleep(3000);
} catch (Exception e) {
System.out.println(e);
}

GregorianCalendar cal2 = new GregorianCalendar();
System.out.println(cal2.get(Calendar.SECOND));

System.out.println(cal1.get(Calendar.SECOND));[/HIGHLIGHT]
Ausgabe:

Code:
55
58
55
 
Zuletzt bearbeitet von einem Moderator:

benders

Aktives Mitglied
Ja,

cal.setTime(new Date()); //Erzeugt leider immer in neues Date-Object

daher halte ich es für besser:

cal.setTimeInMillis(System.currentTimeLillis())
zu benutzen.


Bernd
 

chehilbi

Mitglied
was ich jetzt noch nicht ganz verstehe ist die Vererungsstruktur von GreogoriaCalendar. Gregorian
Calendar erbt ja von der abstrakten Klasse Calendar. Wenn man sich den folgende Link anschaut,
sieht man in der Klasse Calendar eine Vielzahl von static Attributen und Methonden die vererbt werden.

Class java.util.Calendar

Wenn diese static sind, wie können dann die GregorianCalendar unterschiedelich Werte annehmen???
 
S

SlaterB

Gast
statische Methoden werden nicht vererbt, nehmen nicht 'unterschiedliche Werte an',
wie kommst du zu dieser Annahme?
 

chehilbi

Mitglied
also static methoden und attribute werden nicht vererbt :) wie peinlich, dass kommt davon wenn man ein halbes jahr c prozedual programmiert :)
 

Wildcard

Top Contributor
Wenn du nur einen Timestamp ausgeben willst, warum dann der Calendar? System.currentTimeMillis() und System.nanoTime()
 

chehilbi

Mitglied
würde natürlich auch gehe, aber mit dem Calendar kann ich das Datum in jedem gewünschten Format darstellen bzw. weitergeben z.B. an eine DB!

System.out.println(System.currentTimeMillis());
 

ARadauer

Top Contributor
bzw. weitergeben z.B. an eine DB!... wops nein!
Code:
      GregorianCalendar cal = null; //was auch immer
      
      Connection con = null; //was auch immer
      PreparedStatement smt = con.prepareStatement("dein query mit ? wo das datum hin gehört");
      smt.setDate(1, new java.sql.Date(cal.getTime().getTime()));
besser prepared statemens verwenden...
 

Ebenius

Top Contributor
Kurz noch die Faustregeln:
  • java.util.Date zum festhalten eines konkreten Datums mit Uhrzeit
  • System.currentTimeMillis(), System.nanoTime(), new Date() zum abfragen der aktuellen Zeit
  • DateFormat, SimpleDateFormat, MessageFormat zum formatieren von Daten
  • Calendar (normaler Weise nicht explizit: GregorianCalendar) zum Modifizieren eines Datums nach Kalender-Regeln (eine Woche vor, 3 Tage zurück, Minuten auf null setzen, ...)
Ebenius
 
Zuletzt bearbeitet:
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
N Unterschied Calendar und GregorianCalendar Allgemeine Java-Themen 9
torresbig Klasse mit extends Calendar über Methoden ändern (Hirnblockade) Allgemeine Java-Themen 7
C Was passt hier nicht bei der Calendar-Class Allgemeine Java-Themen 2
pkm Frage zur Präzision von Calendar.WEEK_OF_YEAR Allgemeine Java-Themen 12
missy72 Methoden Calendar/Date Countdown Allgemeine Java-Themen 9
F Überprüfen ob es Überschneidungen von Uhrzeiten (vom Typ Calendar) gibt Allgemeine Java-Themen 10
A Datentypen Gregorian Calendar - 2 Daten sind gleich?? Allgemeine Java-Themen 3
S Calendar vergleich Allgemeine Java-Themen 2
K Calendar Allgemeine Java-Themen 2
G Calendar/Date arithmetic Allgemeine Java-Themen 3
Mike90 Calendar mit EDT Timezone Allgemeine Java-Themen 4
U Richfaces Calendar Auto Korrektur Allgemeine Java-Themen 2
S Calendar, WeekOfYear Allgemeine Java-Themen 2
-MacNuke- Calendar erst nach getTime() gesetzt? Allgemeine Java-Themen 4
V Calendar monatstage herausfinden? Allgemeine Java-Themen 2
Zed Calendar über Kalenderwochen iterieren Allgemeine Java-Themen 3
J Calendar gibt falsche Wochenanzahl zurück Allgemeine Java-Themen 3
T Suche den großen Calendar Thread ! Allgemeine Java-Themen 2
J Datentyp "Calendar" umwandeln und ausgeben können Allgemeine Java-Themen 36
V Date und Calendar . Allgemeine Java-Themen 3
A Jahresüberschlag bei Gregorian Calendar Allgemeine Java-Themen 3
I Calendar Allgemeine Java-Themen 2
M Bug bei Calendar.add? Allgemeine Java-Themen 5
J (JAVA) Calendar-Objekt formatiert ausgeben Allgemeine Java-Themen 9
G java.sql.Time Calendar-Objekt zuweisen Allgemeine Java-Themen 2
D Datum und Zeit - Date, Calendar oder GregorianCalender ? Allgemeine Java-Themen 13
W Bereichsüberschreitung bei Klasse Calendar Allgemeine Java-Themen 3
T Probleme mit Date und Calendar Allgemeine Java-Themen 7
Zrebna Berechnung der Zeit funktioniert nicht wie erwartet: Date, GregorianCalendar Allgemeine Java-Themen 16
kodela GregorianCalendar.getTimeInMillis() Allgemeine Java-Themen 19
B SimpleDateFormat oder doch lieber GregorianCalendar Allgemeine Java-Themen 3
kodela Eigenartige Datumsberechnung über GregorianCalendar Allgemeine Java-Themen 15
Q GregorianCalendar Methode add liefert komische Werte Allgemeine Java-Themen 3
E GregorianCalendar Wochentag Allgemeine Java-Themen 3
P Fehler im GregorianCalendar Allgemeine Java-Themen 8
T Liste mit GregorianCalendar-Objekten in List einlesen, mit Collection sortieren und ausgeben Allgemeine Java-Themen 3
M Problem mit dem GregorianCalendar Allgemeine Java-Themen 2
J GregorianCalendar wil nich so recht as ick wol will Allgemeine Java-Themen 6
T GregorianCalendar - kein Februar Allgemeine Java-Themen 6
L Probleme mit GregorianCalendar Allgemeine Java-Themen 4
M Seltsamer Fehler bei GregorianCalendar Allgemeine Java-Themen 2
T KW=1 Jahr=2008 Monat=Dezember => GregorianCalendar Allgemeine Java-Themen 8
B GregorianCalendar UNIX Allgemeine Java-Themen 6
ARadauer GregorianCalendar Allgemeine Java-Themen 8
A Verständnisproblem mit GregorianCalendar Allgemeine Java-Themen 10
A Fehler bei Rechnung mit GregorianCalendar Allgemeine Java-Themen 6
D GregorianCalendar std zurück Allgemeine Java-Themen 7
F GregorianCalendar wirft keine Fehler bei z.b. Monat 17 Allgemeine Java-Themen 3
N GregorianCalendar Allgemeine Java-Themen 2
L String ==> Date ==> GregorianCalendar Allgemeine Java-Themen 3
F Zeit errechnen mit GregorianCalendar Allgemeine Java-Themen 8
F Datum in GregorianCalendar Allgemeine Java-Themen 3
S GregorianCalendar.getInstance() Allgemeine Java-Themen 7
M Methodenübersicht einer Klasse einsehen Allgemeine Java-Themen 14
Jose05 Java-Klasse im extra cmd-Fenster ausführen Allgemeine Java-Themen 3
A Zweite Service Klasse beim Kompilieren Allgemeine Java-Themen 6
B Ein Objekt einer Klasse mehreren anderen Klassen zur Verfügung stellen? Allgemeine Java-Themen 6
Atten007 Java-Klasse auf macOS entpacken? Allgemeine Java-Themen 2
M Klasse durch Klassen Aufteilung verbessern, aber wo? Allgemeine Java-Themen 1
E Eine Methode einer extendeten Klasse deakitivieren Allgemeine Java-Themen 12
H Kombination Interface und Abstrakte Klasse bei Generics Allgemeine Java-Themen 3
EinNickname9 Best Practice Singleton und Singleton mit Instanz zu anderer Klasse -Pattern Allgemeine Java-Themen 30
Y ImagePanel von anderer Klasse in eine MainFrame Klasse hinzufügen. Allgemeine Java-Themen 1
Lukas2904 Schleife mit ansteuerung einer Klasse Allgemeine Java-Themen 5
d.lumpi Aus Einer Klasse auf ein Objekt einer anderen Klasse Zugreifen Allgemeine Java-Themen 1
missy72 Klassen Eigene Klasse MessageWindow ähnlich der Alert Klasse Allgemeine Java-Themen 2
Drachenbauer wie kann ich alle instanzen einer Klasse durchsehen, ohne, dass diese in einer Liste erzeugt wurden? Allgemeine Java-Themen 11
kanywayne Java programmieren: Polynom Klasse Allgemeine Java-Themen 4
L Die abzuleitende Klasse als Parameter übergeben Allgemeine Java-Themen 4
S Klassen Einfügen von unbekannter menge an Variablen in eine Klasse mithilfe von ASM Allgemeine Java-Themen 5
C Klasse mit Mockito simulieren Allgemeine Java-Themen 9
P einen public <Optinal String> in einer anderen Klasse mit einem Int vergleichen Allgemeine Java-Themen 2
S Wenn eine Klasse zwei Interfaces mit derselben Methodensignatur implementiert: welche wird aufgerufen? Allgemeine Java-Themen 15
Thallius Key/Value Table in Klasse einlesen Allgemeine Java-Themen 14
S static in Interface und Klasse Allgemeine Java-Themen 2
W Was genau sind IOTools? Kann ich stattdessen nicht die Scanner Klasse verwenden? Allgemeine Java-Themen 3
V Threads Probleme beim Aufrufen von Methoden einer anderen Klasse (Threads) Allgemeine Java-Themen 14
X Collections Gibt es eine Klasse welche die Vorteile von List und HashMap vereint, aber konstante Laufzeit (O(1)) hat in Java? Allgemeine Java-Themen 4
D javassist API Klasse in MethodCall ermitteln Allgemeine Java-Themen 8
kodela Klasse mit "gezipten" Daten Allgemeine Java-Themen 6
J Builder Klasse mit Lombok bauen Allgemeine Java-Themen 2
L Operatoren Java Reflections: Alle Methoden einer Klasse aufrufen ohne Exceptions Allgemeine Java-Themen 5
M [SOAP] - Klasse aus WSDL ausschließen Allgemeine Java-Themen 2
N Generic Type einer Generischen Klasse während der Laufzeit bekommen Allgemeine Java-Themen 2
X Klassen Klasse BreakIterator Allgemeine Java-Themen 6
R Arraylist in andere Klasse leiten und bearbeiten Allgemeine Java-Themen 10
kodela Klassen Klasse "vergisst" ihre Daten Allgemeine Java-Themen 2
pkm Kann eine ServerSocket-Klasse nicht stateful sein? Allgemeine Java-Themen 4
E Socket Dynamische Klasse von ObjectOutputStream lesen. Allgemeine Java-Themen 8
M Matcher-Klasse findet match nicht Allgemeine Java-Themen 6
cool_brivk24 Variablen abfragen von Boolean von anderer Klasse Allgemeine Java-Themen 12
S Seltsames Ergebnis mit Date-Klasse Allgemeine Java-Themen 6
J int Werte in einer anderen Klasse in Arrays speichern Allgemeine Java-Themen 3
D Warum kann ich eine (deflaut) Klasse aus einer Libary in einem anderen Projekt benutzen? Allgemeine Java-Themen 3
Neoline Klassen Singleton Klasse buchmanager Allgemeine Java-Themen 19
M Kapselung Modellierung von Intervallen: Klasse Interval Allgemeine Java-Themen 4
B Übernommene Variablen(werte) aus der Main-Klasse ändern? Allgemeine Java-Themen 9
ReinerCoder Klasse kann nicht public deklariert werden Allgemeine Java-Themen 2
ReinerCoder Methode einer Klasse meldet Fehler "misplaced construct(s)" Allgemeine Java-Themen 13
I Collection - contains-Methode überschreiben (anonyme innere Klasse) Allgemeine Java-Themen 4

Ähnliche Java Themen

Neue Themen


Oben