Как исправить: Синтаксическая ошибка на токене (-ах), ошибка неуместной конструкции (-ок) - PullRequest
0 голосов
/ 18 сентября 2018

пробираюсь через онлайн-видео-урок по Java и сталкиваюсь с некоторыми проблемами. Учебное пособие посвящено шаблону составного дизайна, с которым у меня мало опыта. первые два урока прошли хорошо, а третий дает мне проблемы. Я попросил инструктора / создателя учебника о помощи, но не получил ответа. Пример кодирования имеет отношение к «развертыванию ящиков», вот мой код для каждого класса / интерфейса:

Подарок:

package composite;

public class Gift implements SurpriseBox {

    private String giftName;

    public Gift(String name) {
        this.giftName = name;
    }
    public void unWrap() {
        System.out.println("Unwrapping gift: " + this.giftName);
    }

}

SurpriseBox:

package composite;

public interface SurpriseBox {

    void unWrap();

}

GiftSurpriseBox

package composite;

import java.util.ArrayList;

public class GiftSurpriseBox implements SurpriseBox {

    private ArrayList<SurpriseBox> surpriseBoxes;

    public GiftSurpriseBox() {
        this.surpriseBoxes = new ArrayList<>();

    }

    public void add(SurpriseBox box){
        this.surpriseBoxes.add(box);
    }

    public void remove(SurpriseBox box) {
        this.surpriseBoxes.remove(box);
    }

    public void unWrap() {
        surpriseBoxes.forEach(SurpriseBox::unWrap);
    }

}

В классе SurpriseBox, особенно в последней строке кода, я сталкиваюсь с проблемами

Клиент:

package composite;

public class Client {
    public static void main(String[] args) {
        GiftSurpriseBox giftBox = new GiftSurpriseBox();
        GiftSurpriseBox subGiftBox = new GiftSurpriseBox();

        Gift gift = new Gift("Toy Car");
        Gift gift2 = new Gift("Toy Plane");

        giftBox.add(gift);
        subGiftBox.add(gift2);

        giftBox.add(subGiftBox);

        giftBox.unWrap();
    }

}

Я полагаю, что, имея небольшое понимание предмета, идея заключается в том, что вы создаете подарки и помещаете их в коробки, в SurpriseBox есть дочерние коробки, а составной шаблон позволяет, когда вы вызываете развертывание для каждой упаковки внутри родителей, быть развернутым. .

Использование ECLIPSE JUNO и получение следующих сообщений об ошибках:

Синтаксическая ошибка на токене (ах), неуместная конструкция (ы) Синтаксическая ошибка на токене ":", после этого токена ожидается EnhancedForStatementHeaderInit

НЕ УВЕРЕН, ЕСЛИ ЭТО ДОЛЖНО БЫТЬ С МОЕЙ JRE, ПОТОМУ ЧТО СОЗДАТЕЛЬ ОБУЧЕНИЯ НЕ ДАЛ ИНФОРМАЦИЮ О ЕГО JRE / КОМПИЛЕРЕ

1 Ответ

0 голосов
/ 18 сентября 2018

Проблема в том, что я использовал ECLIPSE IDE. Я обновился до Фотона, и все работает хорошо.

...