public void add(String value) {
    //напишите тут ваш код
    if (first.next == null) {
        Node obj = new Node();
        obj.value = value;
        first.next = obj;
        last.prev = obj;
    } else {
        Node obj1 = new Node();
        obj1.value = value;
        last.prev.next = obj1;
        obj1.prev = last.prev;
        last.prev = obj1;
    }
}
Есть задание по созданию работающего аналога коллекции LinkedList. В ней есть такой код *код*. В нем создается первый объект в блоке if, и , при добавлении новых, они создаются через блок после if-а. Но! У нас есть код создания только лишь одного объекта класса с одним уникальным именем. Что происходит при добавлении новых объектов в данный список? Т.к. отдельного кода для добавления других объектов со своими именами нет, я так понимаю, итератор постоянно создает новые объекты с одним и тем же названием (в данном случае obj1). Почему так происходит? По логике, если я создаю объект с таким же названием, старый должен перезаписаться/удалиться/еще что-либо. И по итогу должен остаться один последний созданный объект obj1. Но этого не происходит. Объясните пожалуйста работу данного участка кода. Заранее спасибо!