첫번째 프로그램 :범위, 수명의 측면에서 차이가 있습니까?
class Demo {
public static void main(String args[]) {
Object obj ;
while(true) {
obj = new Object();
}
}
}
2 프로그램 :
class Demo {
public static void main(String args[]) {
Object obj = null;
while(true) {
obj = new Object();
}
}
}
질문 : 제 프로그램 OBJ 루프에 값을 할당하는 두 개의 프로그램 obj
범위의 점에서 차이가 (존재) obj는 처음에 (두 번째 프로그램에서) 널값이 할당됩니다.
는 오류없이 첫 번째 프로그램 실행을합니까 (while 루프가 어느 시점에서 종료 가정) 초기화되지 그 때문에 컴파일 오류가 발생합니다 ? – bumbumpaw
예 오류없이 실행됩니다 ... – Anonymous
사실, 객체 유형의 기본값은 'null'입니다. 그래서 intializint 그것은'null' 또는 초기화되지 않는 것과 같습니다. – bumbumpaw