Тип Date

Получение текущей даты:

public static void main(String[] args) throws Exception
{
    Date today = new Date();
    System.out.println("Current date: " + today);
}

Вычисление разницы между двумя датами:

public static void main(String[] args) throws Exception
{
    Date currentTime = new Date();           //получаем текущую дату и время
    Thread.sleep(3000);                      //ждём 3 секунды – 3000 миллисекунд
    Date newTime = new Date();               //получаем новое текущее время
        
    long msDelay = newTime.getTime() - currentTime.getTime(); //вычисляем разницу
    System.out.println("Time distance is: " + msDelay + " in ms");
}

Наступило ли уже некоторое время:

public static void main(String[] args) throws Exception
{
    Date startTime = new Date();

    long endTime = startTime.getTime() + 5000;   //    +5 секунд
    Date endDate = new Date(endTime);

    Thread.sleep(3000);              // ждем 3 секунды 

    Date currentTime = new Date();
    if (currentTime.after(endDate))//проверяем что время currentTime после endDate
    {
        System.out.println("End time!");
    }
}

Сколько прошло времени с начала сегодняшнего дня:

public static void main(String[] args) throws Exception
{
    Date currentTime = new Date();
    int hours = currentTime.getHours();
    int mins = currentTime.getMinutes();
    int secs = currentTime.getSeconds();

    System.out.println("Time from midnight " + hours + ":" + mins + ":" + secs);
}

Сколько дней прошло с начала года:

public static void main(String[] args) throws Exception
{
    Date yearStartTime = new Date();
    yearStartTime.setHours(0);
    yearStartTime.setMinutes(0);
    yearStartTime.setSeconds(0);

    yearStartTime.setDate(1);      // первое число
    yearStartTime.setMonth(0);     // месяц январь, нумерация для месяцев 0-11

    Date currentTime = new Date();
    long msTimeDistance = currentTime.getTime() - yearStartTime.getTime();
    long msDay = 24 * 60 * 60 * 1000;  //сколько миллисекунд в одних сутках
        
    int dayCount = (int) (msTimeDistance/msDay); //количество целых дней
    System.out.println("Days from start of year: " + dayCount);
}