Java - 면접 질문으로 다시 보는 Java의 List와 구현체(ArrayList 등)와 관계
·
Java
얼마 전에 면접을 보러 갔다가 이런 질문을 받았다. 면접관 : ArrayList는 List interface를 구현한 클래스인데 3가지 정도가 같이 넘어오는데 그게 뭔지 아나요? 라는 말을 듣고 아주 그냥 멘붕이 왔었다.그래서 이 글에는 그 내용을 정리해보려고 한다. 이 질문에는 두가지의 의미를 가지고 있다고 생각했다.첫 번째로는 객체지향프로그래밍(OOP)과 설계 관념에서의 추상적 개념두 번째로는 실제 기능 관점 아마 첫번째가 맞을 것 같지만 두 가지 모두 끄적여보려고 한다. 객체지향프로그래밍(OOP)와 설계 관념에서의 추상적 개념 1. 다형성 (Polymorphism)List list = new ArrayList(); 이렇게 선언하면 List 타입의 참조 변수로 ArrayList 객체를 다룰 수 있..
Java - for each문
·
Java
알고리즘 공부를 하다가 for each문이 나와서 글을 작성해 본다.학부에서 Java를 공부할 때 for each문을 접해본 적이 없었는데NHN 아카데미 자바 백엔드 과정을 수료하면서 처음 배웠던 기억이 있다.... for each문이란?for-each 문은 컬렉션(Collection)이나 배열(Array)에 저장된 요소들을 하나씩 순차적으로 반복(iterate) 할 때 사용하는간편한 반복문이다...라고 하는데 향상된 for문이라고 부르기도 한다.for (자료형 변수 : 컬렉션 또는 배열) { // 반복할 코드} 예시로 코드를 작성해 본다면 이런 식으로 사용할 수 있겠다.List names = Arrays.asList("Alice", "Bob", "Charlie");for (String name :..