Originally,
Date
was intended to contain all logic concerning dates, but the API designers eventually realized that the API they had so far was woefully inadequate and could not be cleanly extended to deal correctly with issues such as timezones, locales, different calendars, daylight savings times, etc.So they created
Calendar
to deal with all that complexity, and relegated Date
to a simple timestamp, deprecating all its functionality that dealt with formatting, parsing and individual date fields.BTW, internally these methods such as
Date(int, int, int)
constructor now call Calendar
, so if you see a difference in speed, then you're doing something wrong when calling Calendar
.