Classe de data em Java (com exemplos)

A classe Date representa um instante específico com precisão de milissegundos. A classe Date do pacote java.util implementa a interface Serializable Cloneable e Comparable. Ele fornece construtores e métodos para lidar com data e hora com java. Construtores
    Data() : Cria um objeto de data que representa a data e hora atuais. Data (milissegundos longos) : cria um objeto de data para os milissegundos fornecidos desde 1º de janeiro de 1970 00:00:00 GMT. Data(int ano int mês int data) Data(int ano int mês int data int horas int min) Data(int ano int mês int data int horas int min int seg) Data(Strings) Observação : The last 4 constructors of the Date class are Deprecated. Java
       // Java program to demonstrate constuctors of Date   import     java.util.*  ;   public     class   Main   {      public     static     void     main  (  String  []     args  )      {      Date     d1     =     new     Date  ();      System  .  out  .  println  (  'Current date is '     +     d1  );      Date     d2     =     new     Date  (  2323223232L  );      System  .  out  .  println  (  'Date represented is '  +     d2     );      }   }   
    Output:
    Current date is Tue Jul 12 18:35:37 IST 2016 Date represented is Wed Jan 28 02:50:23 IST 1970  
    Métodos importantes
      booleano após (data data): Testa se a data atual é posterior à data especificada. booleano antes (data data): Testa se a data atual é anterior à data especificada. int compareTo(Data data): Compara a data atual com a data fornecida. Retorna 0 se o argumento Data for igual à Data; um valor menor que 0 se a Data for anterior ao argumento Data; e um valor maior que 0 se a Data for posterior ao argumento Data. getTime longo() : Retorna o número de milissegundos desde 1º de janeiro de 1970 00:00:00 GMT representado por este objeto Date. void setTime(muito tempo) : altera a data e a hora atuais para a hora determinada.
    Java
       // Program to demonstrate methods of Date class   import     java.util.*  ;   public     class   Main   {      public     static     void     main  (  String  []     args  )      {      // Creating date      Date     d1     =     new     Date  (  2000       11       21  );      Date     d2     =     new     Date  ();     // Current date      Date     d3     =     new     Date  (  2010       1       3  );      boolean     a     =     d3  .  after  (  d1  );      System  .  out  .  println  (  'Date d3 comes after '     +      'date d2: '     +     a  );      boolean     b     =     d3  .  before  (  d2  );      System  .  out  .  println  (  'Date d3 comes before '  +      'date d2: '     +     b  );      int     c     =     d1  .  compareTo  (  d2  );      System  .  out  .  println  (  c  );      System  .  out  .  println  (  'Miliseconds from Jan 1 '  +      '1970 to date d1 is '     +     d1  .  getTime  ());      System  .  out  .  println  (  'Before setting '  +  d2  );      d2  .  setTime  (  204587433443L  );      System  .  out  .  println  (  'After setting '  +  d2  );      }   }   
    Output:
    Date d3 comes after date d2: true Date d3 comes before date d2: false 1 Miliseconds from Jan 1 1970 to date d1 is 60935500800000 Before setting Tue Jul 12 13:13:16 UTC 2016 After setting Fri Jun 25 21:50:33 UTC 1976