У меня есть сомнения в методологии проектирования, почему мы внедряем код в интерфейс. Это очень заметно в примитивных типах данных. Как будто я не получаю разницу между этими двумя:
Map<Integer, String> mymap = new HashMap<Integer, String>();
и
HashMap<Integer, String> mymap = new HashMap<Integer, String>();
Есть ли разница между этими двумя? Я имею в виду, что все места, где мы будем использовать mymap
, останутся одинаковыми в обоих случаях.
Прошу прощения, если вопрос кажется бесполезным, но я действительно не понимаю, как это будет иметь значение позже, когда будет использоваться mymap
. Пожалуйста, помогите?
Спасибо..
Примечание. Я уже видел этот вопрос о SO, но он не дает того, что я хочу.