Когда вы делаете:
ListNewsTitle = new JList<News>(news);
Вы создаете отдельный объект полностью с новыми данными, существующий список остается неизменным (и больше не ссылается на эту переменную). С ListNewsTitle.setListData(news);
вы модифицируете существующий список.
Различие кажется незначительным, но очень важно. Когда вы заменяете список, любые другие объекты, которые имели ссылку на существующий список, не будут обновлять свой список (так как их список является отдельным объектом от того, который вы только что создали.) Когда вы устанавливаете содержимое существующий список, то любые объекты, имеющие ссылку на этот же существующий объект, будут видеть его обновленное состояние.
В этом случае объекты, имеющие ссылку на существующий объект, включают в себя компоненты графического интерфейса пользователя, поэтому для отображения изменений необходимо изменить существующий список, а не создавать новый.