객체 배열과 참조변수 배열은 동일한 의미를 가진다.
아래 예를 살펴보면,
Tv tv1, tv2, tv3;
Tv[] tvArr = new Tv[3]
원래는 3개의 참조변수를 각각 선언해주는 위 코드와 달리, 아래 코드에서는 길이가 3인 Tv타입의 참조변수 배열을 선언한 것이다.
선언한 객체배열에 객체를 생성해주기 위해 아래와 같이 작성한다.
tvArr[0] = new Tv();
tvArr[1] = new Tv();
tvArr[2] = new Tv();
객체 배열로 선언한 것과, 각각 선언한 것의 차이를 그림으로 살펴보면 아래와 같다.
- 각각 선언한 경우
Tv t1 = new Tv();
Tv t2 = new Tv();
2. 객체배열(== 참조변수 배열)로서 배열을 사용한 경우
Tv[] tvArr = new Tv[2];
tvArr[0] = new Tv();
tvArr[1] = new Tv();
* 객체배열은 단순히 참조변수배열이기 때문에, 선언만 한 것일뿐
객체를 생성한 것은 아니다. 때문에, 객체배열의 각 인덱스에는 객체를 생성해줘야만 한다.
'JAVA' 카테고리의 다른 글
6. 선언위치(클래스영역, 메소드영역)에 따른 변수의 종류 (0) | 2022.09.17 |
---|---|
5. 클래스의 정의 (0) | 2022.09.17 |
3. 클래스 파일 관리는? (0) | 2022.09.04 |
2. 클래스와 객체 (0) | 2022.09.04 |
1. 객체지향 언어이란? (0) | 2022.09.04 |