Чем отличается строка:
HashMap<String,Integer> map = new HashMap<String, Integer>();
от
Map<String, Integer> map2 = new HashMap<String, Integer>();
Я понимаю, что класс HashMap расширяет интерфейс Map, но мне интересно именно, почему в одних случаях нужно делать так как в первой строке, а в других так, как во второй.
И в каких случаях нужно применять первый способ, а каких второй?
HashMapслева нужно писать когда вы хотите в дальнейшем обращаться к методам и полям определенным вHashMap, но не вMap– Stranger in the Q Jul 23 '19 at 10:57