chapter 4 클래스, 객체, 참조변수(2)

int [] numbers = new int [8];
int 배열(정수형 배열)은 primitive 타입이 아니다
numbers는 배열이 아니라 어떤 배열의 주소를 저장하는 참조변수
배열 이름인 numbers는 '참조변수'
8칸의 배열은 new int [8]에 의해 생성되는 (배열형)객체
배열 각 칸은 int 타입의 primitive 변수

Person1 [] members = new Person1 [8];
members는 Person1타입의 배열인 참조변수
배열 자체는 new Person1 [8] 명령어로 만들어지고
이렇게 만들어진 배열의 주소가 members에 저장이 되어서
members가 배열을 참조하게 된다

// 2
static Person1 [] members = new Person1 [100];
static int n = 0;
public static void main(String[] args) {
//members = new Person1 [100];
try {
Scanner in = new Scanner(new File("input.txt"));
while (in.hasNext()) {
String nm = in.next();
String nb = in.next(); //이름과 전화번호를 읽는다
members[n] = new Person1(); // 객체 생성
members[n].name = nm;
members[n].number = nb;
n++;
}
in.close();
} catch (FileNotFoundException e) {
System.out.println("No file");
}
for (int i = 0; i < n; i++) {
System.out.println(members[i].name + " " + members[i].number);
}
}