Java: Dlaczego muszę zainicjować prymitywną zmienną lokalną?

public class Foo {
    public static void main(String[] args) {
        float f;
        System.out.println(f);
    }
}

Instrukcja print powoduje następujący błąd czasu kompilacji

Lokalna zmienna f może nie zostać zainicjowana

Jeśli prymitywy w Javie mają jużwartość domyślna (float = 0.0f), dlaczego muszę je zdefiniować?

Edytować:

Więc to działa

public class Foo {
    float f;
    public static void main(String[] args) {
        System.out.println(new Foo().f);
    }
}

Dziękuję wszystkim!

questionAnswers(5)

yourAnswerToTheQuestion