클래스 유형 구성원을 필드로 가지는 클래스 B
을 가정 해 보겠습니다.Java 필드 초기화
이제 기본 생성자가 합성되지 않도록 B
에 대한 생성자를 작성했습니다.
그러나 B's
생성자는 해당 필드를 명시 적으로 초기화하지 않습니다. C
obj_c
의 C++ 기본 생성자에서
Class B
{
C obj_c;
B()
{ }
}
는 비 초기화 된 회원의 기본 생성자 사촌이라고 할 것입니다 자바에 대한 개체 유형 members.What에 대해 암시 적으로 호출 할 것이다 ??
생성자가 Java로 필드를 초기화하지 않으면 어떻게됩니까?
'obj_c = new C();'라고하지 않으면 C의 생성자가 호출되지 않습니다. ** 초기화 할 때까지 'null'상태로 유지됩니다. –
자바는이 경우 obj_c를 'null'로 초기화합니다. –
변수 선언에있는 모든 유형 이름 뒤에'*'라고 상상해보십시오. C++과 비슷한 것을 얻을 수 있습니다. –