[BE/JAVA] Map<> map = new HashMap<>() 를 사용하는 이유

    728x90
    반응형

    2021.03.16

    6일차

     

    입사 9일차.

    이미 개발된 프로젝트들을 보면 HashMap을 선언할 때,

     

    Map<String, Object> map = new HashMap<String, Object>();

    위와 같은 형식으로 선언한 것을 쉽게 찾아볼 수 있다.

     

    그 이유에 대해서 간략히 정리해봤다.

     

     

    1. 인터페이스니까

    ▶ 포폴 개발을 진행할 때, List list = new List();와 같이 선언할 수 없었다.

        그 이유는 List는 Interface라서 바디를 직접 작성할 수 없기 때문이었다.

        Map도 같은 이유이다.

     

      ① Map은 인터페이스다.

      ② 따라서 Body를 직접 작성할 수 없다.

      ③ HashMap은 Map 인터페이스를 구현했다.

     

     

    2. 코드의 유연성을 높일 수 있으니까

    ▶ Map을 구현한 객체는 HashMap, TreeMap 등이 있다.

        Map으로 선언할 경우, HashMap으로 선언할 때보다 가짓수가 많아진다.

        결국 코드의 유연성을 높일 수 있게 되는 것이다.

     

      ① Map map = new TreeMap<>();

      ② Map map = new HashMap<>();

    728x90
    반응형

    댓글