Java: Dostosuj dodając 1 miesiąc do bieżącej daty

Przeczytałem i po prostu doszedłem do wniosku, że obiekt Calendar jest w stanie dodać 1 miesiąc do określonej daty, używając czegoś takiego:

Calendar cal = Calendar.getInstance();
cal.add(Calendar.MONTH, 1);

Chociaż nie podoba mi się jego zachowanie, gdy data jest na 30 lub 31. Jeśli kiedykolwiek dodam 1 miesiąc do 01/31/2012, wyjście zmieni się na 29.02.2012. Po dodaniu 1 miesiąca staje się on 29.03.2012.

Czy mimo to mogę zmusić 29.02.2012 do 03/01/2012 automatycznie?

Zasadniczo to jest to, co chcę zrobić:

Data domyślna: 01/31/2012

Dodaj 1 miesiąc: 03/01/2012

Dodaj jeszcze 1 miesiąc: 31.03.2012

questionAnswers(3)

yourAnswerToTheQuestion