Galileo Computing < openbook > Galileo Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger

 << zurück
Java ist auch eine Insel von Christian Ullenboom
Programmieren für die Java 2-Plattform in der Version 5
Java ist auch eine Insel

Java ist auch eine Insel
5., akt. und erw. Auflage
1454 S., mit CD, 49,90 Euro
Galileo Computing
ISBN 3-89842-747-1
gp Kapitel 10 Raum und Zeit
  gp 10.1 Greenwich Mean Time (GMT)
  gp 10.2 Wichtige Datum-Klassen im Überblick
  gp 10.3 Sprachen der Länder
    gp 10.3.1 Sprachen und Regionen über Locale-Objekte
  gp 10.4 Übersetzung durch ResourceBundle-Objekte
  gp 10.5 Zeitzonen
    gp 10.5.1 Zeitzonen durch die Klasse TimeZone repräsentieren
  gp 10.6 Die Klasse Date
    gp 10.6.1 Objekte erzeugen und Methoden nutzen
  gp 10.7 Calendar und GregorianCalendar
    gp 10.7.1 Die abstrakte Klasse Calendar
    gp 10.7.2 Der gregorianische Kalender
    gp 10.7.3 Ostertage
    gp 10.7.4 Abfragen und Setzen von Datumselementen
  gp 10.8 Formatieren der Datumsangaben
    gp 10.8.1 Mit DateFormat und SimpleDateFormat formatieren
    gp 10.8.2 Parsen von Datumswerten
    gp 10.8.3 Parsen und Formatieren ab bestimmten Positionen


Galileo Computing

10.5 Zeitzonen  downtop

Eine Zeitzone ist ein Gebiet mit gleicher Zeitrechnung. Im Allgemeinen ist sie an einem geographischen Längenkreis ausgerichtet, und die lokale Zeit einer Zeitzone unterscheidet sich im Allgemeinen um eine ganze Stundenzahl von der Weltzeit UTC. Für Zeitzonen östlich des Nullmeridians ist die Differenz der Ortszeit minus der Weltzeit positiv, für westliche Zeitzonen negativ.

Die folgende Tabelle ordnet einigen ausgewählten Ländern die jeweilige Zeitzone zu. Wir sehen, dass Deutschland dem Greenwich-Meridian um eine Stunde voraus ist. Da die GMT-Zeit keinen Wechsel zwischen Sommer- und Winterzeit kennt, ist mitunter im Sommer zu unserer Zeit eine weitere Stunde zu addieren.


Tabelle 10.1   Die Zeitverschiebungen gegenüber GMT

Gegend Relative Zeit
Midway Island, Samoa GMT –11:00
Hawaii GMT –10:00
Alaska GMT –08:00
Pacific Time (US & Canada), Tijuana GMT –09:00
Mountain Time (US & Canada) GMT –07:00
Central Time (US & Canada), Mexico City GMT –06:00
Eastern Time (US & Canada), Bogota, Lima GMT –05:00
Atlantic Time (Canada), Caraca, La Paz GMT –04:00
New Foundland GMT –03:30
Brasila, Buenos Aires, Georgetown GMT –03:00
Mid-Atlantic GMT –02:00
Azores GMT –01:00
Greenwich Mean Time, Monrovia, Casablanca GMT –00:00
Central European Time, Central Africa GMT +01:00
Athens, Helsinki, Istanbul, Eastern Europe, Cairo, Harare, Pretoria GMT +02:00
Moscow, St. Petersburg, Baghdad, Kuwait, Nairobi, Riyadh GMT +03:00
Abu Dhabi, Muscat, Volgograd GMT +04:00
Karachi GMT +04:30
Islamabad, Tashkent GMT +05:00
Bombay, Calcutta, Colombo GMT +05:30
Almaty, Dhaka GMT +06:00
Bankok, Jakarta, Hanoi GMT +07:00
Hong Kong, Singapore, Taipei, Beijing GMT +08:00
Tokyo, Seoul GMT +09:00
Darwin GMT +09:30
Guam, Hobart, Port Moresby, Vladivostok, Brisbane, Melbourne, Sydney GMT +10:00
Magadan, Solomon Is., New Caledonia GMT +11:00
Wellington, Auckland, Fiji GMT +12:00

Sommerzeiten (engl. daylight saving time) haben keine astronomische Grundlage.


Galileo Computing

10.5.1 Zeitzonen durch die Klasse TimeZone repräsentieretoptop

Ein Exemplar der Klasse TimeZone repräsentiert eine Zeitzone inklusive Zeitverschiebung. Mit der statischen Funktion getDefault() lässt sich immer ein Zeitzonen-Objekt passend zu den lokalen Gegebenheiten ermitteln.


abstract class java.util.  TimeZone
  implements Serializable, Cloneable

gp  static TimeZone getDefault() Gibt die Zeitzone für die aktuelle (geographische) Umgebung zurück.
gp  static String[] getAvailableIDs() Liefert alle der Bibliothek bekannten Abkürzungen für Zeitzonen. Die Liste ist über 560 Einträge lang und beginnt mit »ACT«, geht über »CET«, »Europe/Berlin« bis »Zulu«.
gp  static String[] getAvailableIDs( int rawOffset ) Liefert die Abkürzungen für Zeitzonen in einer gegebenen Zeitzone.
gp  static TimeZone getTimeZone( String ID ) Liefert die Zeitzone für eine gegebene Abkürzung. So liefert TimeZone.getTimeZone("CET"); unsere Zeitzone.

Abbildung
Hier klicken, um das Bild zu Vergrößern

Die Unterklasse SimpleTimeZone

SimpleTimeZone ist eine konkrete Unterklasse der abstrakten Klasse TimeZone. Um ein Exemplar für die mitteleuropäische Zeit zu konfigurieren, initialisieren wir das Objekt mit der gewünschten Zeitverschiebung gegenüber der GMT. Zusätzlich wird ein Kürzel für die Zeitzone als String übergeben. Danach stellen wir noch passend die Regeln für Anfang und Ende der Sommerzeit ein. Der Wechsel erfolgt am letzten Sonntag im März beziehungsweise Oktober jeweils um 2 Uhr nachts.


Beispiel   Eine SimpleTimeZone für Deutschland.
SimpleTimeZone mez = new SimpleTimeZone( +1*60*60*1000, "CET" );
mez.setStartRule( Calendar.MARCH, –1, Calendar.SUNDAY, 2*60*60*1000 );
mez.setEndRule( Calendar.OCTOBER, –1, Calendar.SUNDAY, 2*60*60*1000 );

Wenn wir ein Calendar-Objekt mit der mitteleuropäischen Zeit als Grundlage versehen wollen, schreiben wir:

Calendar cal = GregorianCalendar.getInstance( mez );
 << zurück




Copyright © Galileo Press GmbH 2005
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


[Galileo Computing]

Galileo Press GmbH, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de