Задать вопрос
@vapi

Могут ли 2 объекта одинакового типа иметь одинаковое имя ссылки, если создавать объекты в цикле?

Для опытных программистов вопрос смешной, но все же ответ на него нигде не нашел.
Цикл создает 10 объектов типа Song и добавляет их в коллекцию. В каждой итерации цикла используется одна и та же ссылочная переменная newSong.

Вопрос: когда цикл закончит свою работу в коллекции ArrayList будет всего один объект типа Song (последний добавленный) на который ссылается ссылка "newSong", а все остальные объекты Song будут без ссылки?

public class Song {
}

public class Test {
public static void main(String[] args) {
ArrayList list=new ArrayList();
for(int i=0; i<10;i++){
Song newSong=new Song();
list.add(newSong);
}
}
}
  • Вопрос задан
  • 108 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Java-разработчик с нуля
    12 месяцев
    Далее
  • Skillbox
    Java-разработчик
    8 месяцев
    Далее
  • ProductStar
    Java-разработчик
    9 месяцев
    Далее
Решения вопроса 1
GavriKos
@GavriKos
Микропетпроджект - https://home-cloud.store/
Нет. В списке будет 10 элементов, которые являются ссылками на разные экземпляры класса Song.
По завершению цикла переменная newSong вообще перестанет существовать.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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