정의
- 컴퓨터 과학에서 효율적인 접근 및 수정을 가능케 하는 자료의 조직, 관리 저장을 의미한다.
- 자료구조는 데이터 값의 모임, 또 데이터 간의 관계, 그리고 데이터에 적용할 수 있는 함수나 명령을 의미한다.
배열
- 가장 기본적인 자료 구조
- homogeneous collection: 동일한 데이터 타입만 관리 가능
- 타입이 다른 객체를 관리하기 위해서는 매번 다른 배열 필요
- Polymorphism
- Object를 이용하면 모든 객체 참조 가능 -> Collection Framework
- 담을 때는 편리하지만 빼낼 때는 Object로만 가져올 수 있음
- 런타임에 실제 객체의 타입 확인 후 사용해야 하는 번거로움
- Generic을 이용한 타입 한정
- 컴파일 타임에 저장하려는 타입 제한 -> 형변환의 번거로움 제거