객체 생성 방법
차량 미니밴 = new Vehicle(); Vehicle 유형의 객체를 선언합니다.
문은 두 가지 작업을 수행합니다.
Vehicle 클래스의 minivan이라는 변수를 선언합니다.
객체의 물리적 복사본을 만들고 new 연산자를 사용하여 미니밴에 참조를 할당합니다.
new 연산자는 객체에 대한 메모리를 동적으로 할당하고 해당 객체에 대한 참조를 반환합니다.
참조는 new에 의해 할당된 메모리에 있는 객체의 주소입니다.
그런 다음 참조는 변수에 저장됩니다.
Java에서는 클래스의 모든 객체를 동적으로 할당해야 합니다.
문의 두 단계를 다시 작성하여 각 단계를 개별적으로 표시할 수 있습니다.
차량용 미니밴; // 객체에 대한 참조를 선언합니다.
미니밴 = 새로운 차량(); // Vehicle 객체를 할당합니다.
첫 번째 줄은 미니밴을 Vehicle 유형의 객체에 대한 참조로 선언합니다.
미니밴은 객체를 참조할 수 있는 변수이지만 객체는 아닙니다.
현재 미니밴은 객체를 참조하지 않습니다.
다음 줄은 새로운 Vehicle 객체를 생성하고 미니밴에 참조를 할당합니다.
이제 미니밴이 객체와 연결됩니다.
참조 변수 및 할당
객체 참조 변수는 할당 작업에서 기본 유형 변수와 다르게 작동합니다.
기본 유형 변수에서 왼쪽 변수는 오른쪽 변수 값의 복사본을 받습니다.
객체 참조 변수에서 왼쪽 변수는 오른쪽 변수와 동일한 객체를 참조합니다.
예기치 않은 결과가 발생할 수 있습니다.
예:
차량 car1 = 새 차량();
차량 car2 = car1;
car1과 car2는 동일한 객체를 참조합니다.
car1 또는 car2를 통해 변경된 사항은 동일한 객체에 영향을 미칩니다.
언제:
car1.mpg = 26;
System.out.println(car1.mpg);
System.out.println(car2.mpg);
26번 출구가 있습니다.
car1과 car2는 동일한 객체를 참조하지만 다른 방식으로 연결되어 있지 않습니다.
car2에 대한 후속 할당은 car1에 영향을 주지 않습니다.
예:
차량 car1 = 새 차량();
차량 car2 = car1;
차량 car3 = 새 차량();
자동차2 = 자동차3;
car2는 이제 car3과 동일한 객체를 참조합니다.
car1이 참조하는 객체는 변경되지 않은 상태로 유지됩니다.
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3