Dlaczego java prosi o zainicjowanie zmiennych, gdy jest lokalna
Zobacz poniższy kod. Metoda printTest () drukuje domyślną wartość niezainicjowanych zmiennych, ale jeśli chodzi o metodę główną, java prosi o inicjalizację zmiennej. Czy ktoś może wyjaśnić dlaczego?
public class Test1 {
public static void main(String[] args) {
int j;
String t;
System.out.println(j);
System.out.println(t);
}
}
public class Test2 {
int i;
String test;
public static void main(String[] args) {
new Test().printTest();
}
void printTest() {
System.out.println(i);
System.out.println(test);
}
}