객체 배열
객체 배열==참조변수 배열
객체 역시 배열로 다룰 수 있다. 객체 배열 안에 객체의 주소가 저장된다.
참조변수 여러 개 묶어서 하나의 배열로 다룬다.
길이가 3인 객체 배열 tvArr을 생성. 각 요소는 참조변수의 기본값인 null로 초기화.
3개의 객체의 주소를 저장할 수 있다.
객체 배열을 생성했지만(참조변수들이 만들어짐) 아직 객체가 저장되지 않았다.
객체를 생성해서 객체 배열의 각 요소에 저장해야한다!
*참조변수 배열만 생성해주고서 (참조변수만 만들어짐
)참조변수를 만들어서 객체를 따로 하나씩 넣어줘야한다.
객체배열을 만들었다고해서 객체들이 자동으로 만들어지는 것이 아니다. 넣어줘야한다.
배열의 초기화 블럭 사용
다뤄야할 객체 수가 많을 때는 for문을 사용
예4) //객체 배열
public class TvTest4 {
public static void main(String[] args) {
Tv[] tvArr = new Tv[3]; //길이가 3인 tvArr배열 생성
//Tv 객체를 생성해서 Tv객체 배열의 각 요소에 저장
for(int i=0; i<tvArr.length; i++) {
tvArr[i]=new Tv();
tvArr[i].channel=i+10; //tvArr[i].channel에 i+10을 저장
}
for(int i=0; i<tvArr.length; i++) {
tvArr[i].channelUp(); //tvArr[i]의 메서드를 호출. 채널이 1증가
System.out.printf("tvArr[%d].channel=%d%n", i, tvArr[i].channel);
}
}
}
Tv 클래스는 같은 패키지내에 동일하게 있어서 작성하지 않음.
'JAVA > 객체지향프로그래밍1' 카테고리의 다른 글
[JAVA]메서드 (0) | 2021.06.20 |
---|---|
[JAVA] 변수와 메서드-변수 (0) | 2021.06.19 |
[JAVA] 객체와 인스턴스 (0) | 2021.06.18 |
[JAVA] 클래스와 객체 (0) | 2021.06.18 |
[JAVA] 객체지향언어 (0) | 2021.06.17 |