Programmation orientée objet
Licence d'Informatique - Année 2003/2004
TP n°3
Dates (Notions préliminaires) :
java.util
Date
: classe traditionelle, la plupart des méthodes sont "deprecated".
Calendar
: implémente la plupart des méthodes de Date
, classe abstraite
GregorianCalendar
: sous-classe de Calendar
, implémente le calendrier solaire.
Date date = new Date();
// Date courante
Date date = new Date(long d);
// Date d
en ms après le 1/1/70
Calendar calendar = Calendar.getInstance();
GregorianCalendar calendar = new GregorianCalendar(int year,int month,int day);
calendar.set(int year,int month,int day);
calendar.setTime(Date date);
// pour passer de Date
à Calendar
Date date = calendar.getTime();
// Dans l'autre sens
Date
:
boolean after(Date when);
boolean before(Date when);
boolean equals(Object obj);
Calendar
: même méthodes mais abstraites.
GregorianCalendar
: même méthodes mais implémentées.
Calendar
: rien
Date
: String toString()
GregorianCalendar
: GregorianCalendar gc; gc.getTime().toString();
java.util
for Locale
et
java.text
for DateFormat
Locale
fournit essentiellement des constantes statiques pour identifier des langages et des pays. Exemple : Locale.FRENCH
, Locale.US
DateFormat
, classe abstraite, fournit un formateur de dates dépendant d'une instance de Locale
qui peut être obtenu par la méthode statique : getInstance(int style,Locale aLocale);
L'argument style est une constante statique de la classe DateFormat
: DEFAULT
, FULL
, LONG
, MEDIUM
ou SHORT
.
Date today;
String dateOut;
DateFormat dataFormatter;
dateFormatter = DateFormat.getDateInstance(DateFormat.LONG,Locale.FRENCH);
today = new Date();
dateOut = dateFormatter.format(today);
add
: dans Calendar
, abstract void add(int champ,int quantité);
ajoute ou soustrait quantité au champ : année, mois, jour en passant au champ suivant si nécessaire. Les champs sont des variables entières statiques de la classe Calendar
. Par exemple : DAY_OF_YEAR
, DAY_OF_WEEK
, DAY_OF_MONTH
, MONTH
));