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

Inhaltsverzeichnis
Vorwort
1 Java ist auch eine Sprache
2 Sprachbeschreibung
3 Klassen und Objekte
4 Der Umgang mit Zeichenketten
5 Mathematisches
6 Eigene Klassen schreiben
7 Angewandte Objektorientierung
8 Exceptions
9 Generics, innere Klassen
10 Die Klassenbibliothek
11 Threads und nebenläufige Programmierung
12 Datenstrukturen und Algorithmen
13 Raum und Zeit
14 Dateien und Datenströme
15 Die eXtensible Markup Language (XML)
16 Grafische Oberflächen mit Swing
17 Grafikprogrammierung
18 Netzwerkprogrammierung
19 Verteilte Programmierung mit RMI und Web–Services
20 JavaServer Pages und Servlets
21 Applets
22 Midlets und die Java ME
23 Datenbankmanagement mit JDBC
24 Reflection und Annotationen
25 Logging und Monitoring
26 Sicherheitskonzepte
27 Java Native Interface (JNI)
28 Dienstprogramme für die Java-Umgebung
Stichwort

Download:
- ZIP, ca. 14,1 MB
Buch bestellen
Ihre Meinung?

Spacer
<< zurück
Java ist auch eine Insel (8. Auflage) von Christian Ullenboom
Programmieren mit der Java Standard Edition Version 6
Buch: Java ist auch eine Insel (8. Auflage)

Java ist auch eine Insel (8. Aufl.)
8., aktual. Auflage, geb., mit DVD
1.475 S., 49,90 Euro
Galileo Computing
ISBN 978-3-8362-1371-4
Pfeil 13 Raum und Zeit
Pfeil 13.1 Weltzeit
Pfeil 13.2 Wichtige Datum-Klassen im Überblick
Pfeil 13.3 Sprachen der Länder
Pfeil 13.3.1 Sprachen und Regionen über Locale-Objekte
Pfeil 13.4 Internationalisierung und Lokalisierung
Pfeil 13.4.1 ResourceBundle-Objekte und Ressource-Dateien
Pfeil 13.4.2 Ressource-Dateien zur Lokalisierung
Pfeil 13.4.3 Die Klasse ResourceBundle
Pfeil 13.4.4 Ladestrategie für ResourceBundle-Objekte
Pfeil 13.5 Die Klasse Date
Pfeil 13.5.1 Objekte erzeugen und Methoden nutzen
Pfeil 13.5.2 Date-Objekte nicht immutable
Pfeil 13.6 Calendar und GregorianCalendar
Pfeil 13.6.1 Die abstrakte Klasse Calendar
Pfeil 13.6.2 Der gregorianische Kalender
Pfeil 13.6.3 Ostertage
Pfeil 13.6.4 Abfragen und Setzen von Datumselementen
Pfeil 13.7 Formatieren und Parsen von Datumsangaben
Pfeil 13.7.1 Ausgaben mit printf()
Pfeil 13.7.2 Mit DateFormat und SimpleDateFormat formatieren
Pfeil 13.7.3 Parsen von Datumswerten
Pfeil 13.8 Zum Weiterlesen


Galileo Computing - Zum Seitenanfang

13.5 Die Klasse Date Zur nächsten ÜberschriftZur vorigen Überschrift

Die ältere Klasse java.util.Date ist durch die Aufgabenverteilung auf die Klassen DateFormat und Calendar sehr schlank. Ein Exemplar der Klasse Date verwaltet ein besonderes Datum oder eine bestimmte Zeit; die Zeitgenauigkeit beträgt eine Millisekunde. Date-Objekte sind mutable, also veränderbar. Sie lassen sich daher nur mit Vorsicht an Methoden übergeben oder zurückgeben.

Im SQL-Paket gibt es eine Unterklasse von java.util.Date, die Klasse java.sql.Date. Bis auf eine Fabrikfunktion java.sql.Date.valueOf(String), die Zeichenfolgen mit dem Aufbau »yyyy-mm-dd« erkennt, gibt es keine Unterschiede.


Galileo Computing - Zum Seitenanfang

13.5.1 Objekte erzeugen und Methoden nutzen Zur nächsten ÜberschriftZur vorigen Überschrift

Viele Methoden von Date sind veraltet, und zwei Konstruktoren der Klasse bleiben uns:


class java.util.Date 
implements Serializable, Cloneable, Comparable<Date>

  • Date()
    Erzeugt ein Datum-Objekt und initialisiert es mit der Zeit, die bei der Erzeugung gelesen wurde. Die gegenwärtige Zeit erfragt dieser Konstruktor mit System.currentTime-Millis().
  • Date( long date )
    Erzeugt ein Datum-Objekt und initialisiert es mit der übergebenen Anzahl von Millisekunden seit dem 1. Januar 1970, 00:00:00 GMT.

Beispiel Mit der toString()-Methode können wir ein minimales Zeitanzeige-Programm schreiben. Wir rufen den Standard-Konstruktor auf und geben dann die Zeit aus. Die println()-Methode ruft wie üblich automatisch toString() auf.

Listing 13.6 com/tutego/insel/date/MiniClock.java

package com.tutego.insel.date; 
 
class MiniClock 
{ 
  public static void main( String[] args ) 
  { 
    System.out.println( new java.util.Date() ); // Fri Jul 07 09:05:16 CEST 2006 
  } 
}

Die anderen Methoden erlauben Zeitvergleiche und operieren auf den Millisekunden.


class java.util.Date 
implements Serializable, Cloneable, Comparable<Date>

  • long getTime()
    Liefert die Anzahl der Millisekunden nach dem 1. Januar 1970, 00:00:00 GMT zurück.
  • void setTime( long time )
    Setzt wie der Konstruktor die Anzahl der Millisekunden des Datum-Objekts neu.
  • boolean before( Date when ), boolean after( Date when )
    Testet, ob das eigene Datum vor oder nach dem übergebenen Datum liegt: true, wenn davor oder danach, sonst false. Falls die Millisekunden in long bekannt sind, kommt ein Vergleich mit den primitiven Werten zum gleichen Ergebnis.
  • boolean equals( Object obj )
    Testet die Datums-Objekte auf Gleichheit. true, wenn getTime() für beide den gleichen Wert ergibt und der aktuelle Parameter nicht null ist.
  • int compareTo( Date anotherDate )
    Vergleicht zwei Datum-Objekte und gibt 0 zurück, falls beide die gleiche Zeit repräsentieren. Der Rückgabewert ist kleiner 0, falls das Datum des aufrufenden Exemplars vor dem Datum von anotherDate ist, sonst größer 0.
  • int compareTo( Object o )
    Ist das übergebene Objekt vom Typ Date, dann verhält sich die Methode wie compareTo(). Andernfalls löst die Methode eine ClassCastException aus. Die Methode ist eine Vorgabe aus der Schnittstelle Comparable. Mit der Methode lassen sich Date-Objekte in einem Feld über Arrays.sort(Object[]) oder Collections.sort() einfach sortieren.
  • String toString()
    Gibt eine Repräsentation des Datums aus. Das Format ist nicht landesspezifisch.

Galileo Computing - Zum Seitenanfang

13.5.2 Date-Objekte nicht immutable topZur vorigen Überschrift

Dass Date-Objekte nicht immutable sind, ist sicherlich aus heutiger Sicht eine große Designschwäche. Immer dann, wenn Date-Objekte übergeben und zurückgegeben werden sollen, ist eine Kopie des Zustands das Beste, damit nicht später plötzlich ein verteiltes Date-Objekt ungewünschte Änderungen an den verschiedensten Stellen provoziert.

Listing 13.7 com.tutego.insel.date.Person.java, Person

class Person 
{ 
  private Date birthday; 
 
  public void setBirthday( Date birthday ) 
  { 
    this.birthday = new Date( birthday.getTime() ); 
  } 
 
  public Date getBirthday() 
  { 
    return new Date( birthday.getTime() ); 
  } 
}


Ihr Kommentar

Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen.






<< zurück
  Zum Katalog
Zum Katalog: Java ist auch eine Insel





Java ist auch eine Insel
Jetzt bestellen


 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 Tipp
Zum Katalog: Coding for Fun





 Coding for Fun


 Buchempfehlungen
Zum Katalog: Objektorientierte Programmierung





 Objektorientierte
 Programmierung


Zum Katalog: Einstieg in Eclipse 3.4






 Einstieg in
 Eclipse 3.4


Zum Katalog: Java 6 lernen mit Eclipse






 Java 6 lernen
 mit Eclipse


Zum Katalog: NetBeans Platform 6






 NetBeans
 Platform 6


Zum Katalog: Java und XML






 Java und XML


Zum Katalog: Visual C# 2008






 Visual C# 2008


Zum Katalog: IT-Handbuch für Fachinformatiker






 IT-Handbuch für
 Fachinformatiker


Zum Katalog: C++ von A bis Z






 C++ von A bis Z


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo




Copyright © Galileo Press 2009
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, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de