Java - 면접 질문으로 다시 보는 Java의 List와 구현체(ArrayList 등)와 관계
·
Java
얼마 전에 면접을 보러 갔다가 이런 질문을 받았다. 면접관 : ArrayList는 List interface를 구현한 클래스인데 3가지 정도가 같이 넘어오는데 그게 뭔지 아나요? 라는 말을 듣고 아주 그냥 멘붕이 왔었다.그래서 이 글에는 그 내용을 정리해보려고 한다. 이 질문에는 두가지의 의미를 가지고 있다고 생각했다.첫 번째로는 객체지향프로그래밍(OOP)과 설계 관념에서의 추상적 개념두 번째로는 실제 기능 관점 아마 첫번째가 맞을 것 같지만 두 가지 모두 끄적여보려고 한다. 객체지향프로그래밍(OOP)와 설계 관념에서의 추상적 개념 1. 다형성 (Polymorphism)List list = new ArrayList(); 이렇게 선언하면 List 타입의 참조 변수로 ArrayList 객체를 다룰 수 있..