Должен ли я использовать слушателя или наблюдателя?
У меня есть выпадающий список в моем графическом интерфейсе, который показывает содержимое ArrayList в другом классе. Новые объекты могут быть добавлены в ArrayList в другом месте графического интерфейса, поэтому мне нужно знать, когда он обновляется, чтобы я мог обновить выпадающее меню. Из того, что я могу собрать, мои два варианта заключаются в том, чтобы расширить класс ArrayList, чтобы позволить мне добавить в него свой собственный changeListener, или сделать класс, который содержит рассматриваемый ArrayList, расширяемым, наблюдаемым.
Какое было бы более подходящее решение?