/* Type agrege constitue de types agreges    */

public class TypeAgregeDeTypesAgreges {

/* Stockage d'une date avec initialisation   */

  static class Date {
    int jour = 1;
    int mois = 1;
    int annee = 1901; };

/* Stockage d'une heure avec initialisation  */

  static class Heure {
    int seconde = 0;
    int minute = 0;
    int heure = 0; };

/* Stockage d'un temps compose               */
/* d'une Date et d'une Heure                 */
/* Initialisation obligatoire                */
/* des deux variables membres agregees       */

  static class Temps {
    Heure heure = new Heure();
    Date date = new Date(); };

/* Programme principal                       */

  public static void main(String [] args) {
    Temps temps = new Temps();
    Ecran.afficherln(temps.date.annee,":",
                     temps.date.mois,":",
                     temps.date.jour,":",
                     temps.heure.heure,":",
                     temps.heure.minute,":",
                     temps.heure.seconde);
  }
}