Почему переменные, объявленные в классе, имеют значения по умолчанию, но переменные, объявленные внутри методов, называемые "локальными переменными", не имеют значений по умолчанию в Java?
Например
class abc
{
int a;
public static void main(String ss[])
{
int b;
abc aa=new abc();
System.out.println(aa.a);
System.out.println(b);
}
}
В приведенном выше примере переменная a
имеет значение по умолчанию 0, но переменная b
дает ошибку, что она, возможно, не была инициализирована.