Это зависит от области, в которой вы объявляете переменную. Например, локальные переменные не имеют default values
, и в этом случае вам придется назначать нуль вручную, где, как и в случае переменных экземпляра, назначение нулевого значения является избыточным, поскольку переменные экземпляра получают значения по умолчанию.
public class Test {
Object propertyObj1;
Object propertyObj2 = null; // assigning null is redundant here as instance vars get default values
public void method() {
Object localVariableObj1;
Object localVariableObj1.getClass(); // illegal, a compiler error comes up as local vars don't get default values
Object localVariableObj2 = null;
Object localVariableObj2.getClass(); // no compiler error as localVariableObj2 has been set to null
propertyObj1.getClass(); // no compiler error
propertyObj2.getClass(); // no compiler error
}
}