#java #коллекции #java_hashmap
Что происходит в данной записи ? Mapm = new HashMap (); Интерфейс Map через полиморфизм инициализируется классом потомком "HashMap" ? Для чего это делается ? Map m; for (int i = 0; i < aProduct.length; i++) { m = new HashMap (); m.put(ATTRIBUTE_NAME_TEXT, aProduct[i]); m.put(ATTRIBUTE_NAME_PR, aPrice[i]); m.put(ATTRIBUTE_NAME_QT, aQuantity[i]); data.add(m); }
Ответы
Ответ 1
Смысл есть. А если в будущем вы захотите использовать не HashMap, а другую реализацию Map? Конечно, можно делать как вам вздумается. А сделано для того, чтобы можно было на лету менять конечную реализацию (к примеру, вместо HashMap использовать LinkedHashMap). Поэтому и принято оперировать интерфейсами. Чтобы не связывать свой код жестко конкретными реализациями.
Комментариев нет:
Отправить комментарий