HashMap<String, Object> map1 = new HashMap<String, Object>();
Map<String, Object> map2 = new HashMap<String, Object>();
Прежде всего Map
- это интерфейс, имеющий другую реализацию, такую как - HashMap
, TreeHashMap
, LinkedHashMap
и т. Д. Интерфейс работает как суперкласс для класса реализации. Таким образом, согласно правилу ООП любой конкретный класс, который реализует Map
, также является Map
. Это означает, что мы можем присвоить / поместить любую переменную типа HashMap
в переменную типа Map
без какого-либо типа приведения.
В этом случае мы можем назначить map1
на map2
без приведения или потери данных -
map2 = map1