객체 배열을 생성할 때 배열 자체를 생성하는 것과 그 안에 있는 객체를 인스턴스화하는 것의 차이점에 유의하는 것이 중요합니다.
Java에서 참조 배열은 객체 자체를 저장하는 것이 아니라 메모리에 있는 객체의 위치를 가리킵니다. 다음 코드는 클래스 A의 객체에 대한 4개의 참조 배열을 생성합니다.
<code class="java">A[] arr = new A[4];</code>
배열 내의 객체에 액세스하려면 각 참조를 실제 개체. 여기에는 new 키워드를 사용하여 객체를 생성하고 이를 배열 요소에 할당하는 작업이 포함됩니다. 다음 코드는 A 클래스의 객체 4개를 인스턴스화하고 이를 배열에 할당합니다.
<code class="java">for (int i = 0; i < 4; i++) { arr[i] = new A(); }</code>
C에서 new A[4]를 사용하면 4개 객체의 배열이 직접 생성됩니다. , Java에서는 배열 참조에 개체를 할당하는 추가 단계가 필요합니다.
배열 내 개체의 메서드와 변수에 액세스하려면 다음과 같은지 확인하세요. 사용하려고 시도하기 전에 인스턴스화됩니다. 그렇지 않으면 null 포인터 예외가 발생합니다.
예를 들어, 다음 코드 조각은 Point 클래스의 두 개체 배열을 만들고 x 및 y 좌표를 설정합니다.
<code class="java">Point[] points = new Point[2]; for (int i = 0; i < 2; i++) { points[i] = new Point(i, i); }</code>
이제 코드는 null 포인터 예외가 발생하지 않고 getX() 및 getY() 메서드를 사용하여 각 점의 x 및 y 좌표에 액세스할 수 있습니다.
위 내용은 Java 배열에서 객체 생성은 어떻게 작동합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!