Я бы посоветовал против расширения класса - вы не добавляете никакого поведения, характерного для экземпляров определенного класса, вы выражаете логику, которая применима для любого GregorianCalendar
(или, возможно, любой календарь вообще).
Как говорит Йоахим, статический метод в служебном классе - это путь, и если Java когда-либо получит методы расширения согласно C # (я знаю, что они были предложены для Java 7, но я думаю, они на данный момент) вы можете изменить их в этот момент.
Да, и используйте Время Джода в любом случае:)