Java SimpleDateFormat parst das Ergebnis um eine Stunde (und ja, ich habe die Zeitzone eingestellt)

Machen Sie mir folgendes klar: Warum schlägt diese einfache JUnit-Behauptung fehl?

public void testParseDate() throws ParseException {
    final SimpleDateFormat formatter = new SimpleDateFormat(
            "yyyy-MM-dd HH:mm:ss z");
    formatter.setTimeZone(UTC);
    final Calendar c = new GregorianCalendar();
    c.setTime(formatter.parse("2013-03-02 11:59:59 UTC"));

    assertEquals(11, c.get(HOUR_OF_DAY));
}

Ich hätte erwartet, dass die Tageszeit 11 ist, aber laut JUnit ist die Tageszeit 12.

junit.framework.AssertionFailedError: expected:<11> but was:<12>
at junit.framework.Assert.fail(Assert.java:47)
    ... snip ...

Antworten auf die Frage(2)

Ihre Antwort auf die Frage