Шаблон команды - параметры - PullRequest
3 голосов
/ 16 февраля 2011

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

Мой вопрос: как я могу передать параметры вызова от коммутаторов в разные приемники через классы команд? У кого-нибудь есть простой пример Java? Кажется, я не могу найти

Спасибо за вашу помощь.

1 Ответ

7 голосов
/ 16 февраля 2011

Просто передайте их при создании экземпляра команды.

public class ConcreteCommand implements Command {

    private Object something;

    public ConcreteCommand(Object something) {
        this.something = something;
    }

    @Override
    public void execute() {
        // ...
    }

}

Или если вам действительно нужно передать аргументы (потому что они представляют рабочее состояние, а не состояние алгоритма), то вам просто нужно сделать это и назвать его " шаблон стратегии " вместо этого;)

...