1. 이종모음(Heterogeneous Collection)

→ 배열에 다형성을 적용시키는 원리

- 배열은 원래 동종모음 구조

// 기본형 자료형으로 만든 배열 예시
// 다른 자료형을 넣을 수 없음
int [] iArr = {1, 2, 3, 4, 5, "인프라"}; // 오류 발생
// A 자료형의 힙 주소를 배열로 저장 가능한 배열 생성
A[] aArr = new A[2];

A a1 = new A();
A a2 = new A();

aArr[0] = a1;
aArr[1] = a2;

위와 같이 동종모음인 경우에만 배열 생성이 가능하다.

 

☆ 다형성을 이용하면 이종모음 구조의 객체 배열 생성이 가능하다.

// 모든 클래스의 부모클래스인 Object 배열을 선언하면
// 다형성 원리(부모 객체를 요구하는 자리에 자식타입을 대입 가능함)에 의해
// 모든 자료를 다 대입할 수 있음.
Object[] oArr = new Object[3];

B b1 = new B();
// aArr[1] = b1; // A타입을 요구하는 배열에 B타입 대입 불가
oArr[0] = b1;
oArr[1] = a2;
oArr[2] = 100; // Object 배열에는 기본형 자료도 대입 가능

위와 같이 다형성 원리에 의해 이종모음 구조의 객체 배열 생성이 가능한 것을 확인할 수 있다.

 

 

 

 

'네트워크캠퍼스 > JAVA' 카테고리의 다른 글

사용제한자  (0) 2024.01.12
매개변수의 다형성  (0) 2024.01.11
클래스의 다형성  (0) 2024.01.09
정보은닉, 캡슐화  (0) 2024.01.08
접근제한자  (0) 2024.01.08

+ Recent posts