Страницы

Поиск по вопросам

вторник, 24 декабря 2019 г.

Collection и ArrayList в Java

#java #полиморфизм


В чём преимущество такой записи:

Collection collection = new ArrayList();


перед такой:

ArrayList collection = new ArrayList();


Ведь мы теряем уникальные методы ArrayList в 1-ом варианте?
    


Ответы

Ответ 1



Ведь мы теряем уникальные методы ArrayList в 1-ом варианте? Нет не теряете. В обоих вариантах вы создаете обьект ArrayList. Разница заключается в том, что используя 1-ый вариант вы можете делать так: collection = new LinkedList(); collection = new HashSet(); и т.д (то есть, если в будущем Вы поймете что порядок элементов для Вас не важен и, следовательно, захотите использовать HashSet вместо ArrayList Вам нужно будет изменить меньше кода). Если говорить конкретнее, то в 1-ом варианте Вы указываете, что переменная с именем collection имеет тип Collection. Так как Collection это интерфейс, который реализовуют все коллекции, то Вы можете сослаться на любую коллекцию.

Комментариев нет:

Отправить комментарий