// filename: Test2.java
class Test1 {
Test1(int x) {
System.out.println("Constructor called " + x);
}
}
// This class contains an instance of Test1
class Test2 {
Test1 t1 = new Test1(10);
Test2(int i) { t1 = new Test1(i); }
public static void main(String[] args) {
Test2 t2 = new Test2(5);
}
}
Output:
Constructor called 10
Constructor called 5
누구든지이 프로그램의 출력을 설명 할 수 있습니까? "생성자 10"이 인쇄되는 방법을 알 수 없습니다. 미리 감사드립니다.프로그램 작업 흐름을 이해할 수 없습니다.
나는 이미 프로그램을 디버깅했지만 어떤 개념이 없는지 잘 모르겠다. Test2의 생성자 안에서 t1을 치는 것처럼 t1이 Test1의 객체 참조에 할당 된 줄로 이동한다. (.t1은 그냥 참조 변수 왜 Test1의 생성자가 호출되고있다. 제발 무언가 소리가 나면 실례합니다. – user4291320