169 похожих чатов

Кто может объяснить? У меня есть интерфейс для модели и сам

класс модели. В ней находится Arraylist.
Как мне его записать: 'ArrayList<Interface> list' или 'ArrayList<Model> list'?

10 ответов

15 просмотров

Первое. Лучше даже List<Interface> list

Иван-Calloop Автор вопроса
Viktor Krasikov
Первое. Лучше даже List<Interface> list

Спасибо. А про замену Arraylist на List - из-за той же ситуации, что первый реализует интерфейс второго?

Иван Calloop
Спасибо. А про замену Arraylist на List - из-за то...

Не из-за этого. Просто считается, что лучше для типов переменных использовать наиболее базовые сущности.

Иван-Calloop Автор вопроса
Viktor Krasikov
Не из-за этого. Просто считается, что лучше для ти...

Хм. А во всех примерах вижу только ArrayList, а в поисках ответов получается, что так "просто модно"

Иван Calloop
Хм. А во всех примерах вижу только ArrayList, а в ...

ArrayList вместо List нужно использовать, если какой-то метод будешь вызывать, которого нет в List

Иван Calloop
Понял, изучу их методы

Тут один наследуется от другого. Поэтому в ArrayList есть всё, что есть в List

Иван Calloop
Хм. А во всех примерах вижу только ArrayList, а в ...

Если параметр будет типа List, то тогда туда можно будет передавать любые объекты, реализующие List. Это может быть удобно. Если тип параметра ArrayList, то можно будет передать только объект типа ArrayList.

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта