Объект, который вы передаете в качестве второго аргумента конструктору Timer, реализует ActionListener.Через этот интерфейс он получает вызов своего метода actionPerformed при каждой тревоге от таймера.У метода actionPerformed есть параметр ActionEvent, метод getWhen которого дает метку времени.Вам нужно будет сохранить исходную временную метку где-нибудь доступной, если вы хотите, чтобы ActionListener вычислял истекшее время.
Таймер Swing - это механизм, не имеющий собственного графического представления.Если вам нравится, ваш ActionListener может реализовать графическое представление таймера.Это может быть графический компонент, такой как JPanel, и его метод actionPerformed может заставить его визуально реагировать, возможно, что-то рисуя, каждый раз, когда таймер отключается.