Согласно Model-View-Control - это интерфейс (Add-) EventListener, реализованный в модели (метод # 1), или есть отдельный контроллер (метод # 2)?
Метод # 1
public class Model implements AddEventListener {
String name;
public Model() {
}
@Override
public void onAddEvent(AddInputEvent event) {
name = event.getText();
}
}
Метод # 2
public class Model {
String name
public Model() {}
public void setName(String name) {
this.name = name;
}
public class Controller implements InputEventListener {
Model model;
public Controller(Model model) {
this.model = model;
}
@Override
public void onAddEvent(AddInputEvent event) {
model.setName(event.getText());
}
Обработчик / Eventproducer / main (добавлен только для завершения)
public interface AddEventHandler {
void add(EventListener listener);
void remove(AddEventListener listener);
void handle(InputEvent event);
}
public interface Console {
void setHandler(InputEventHandler handler);
abstract void start() {
String input = Scanner.nextline();
handler.handle(new InputEvent(this,input);
}
public class App {
public static void main(String[] args) {
Model model = new Model();
Console console=new Console(automat);
InputEventHandler handler=new InputEventHandler();
// for method #1
handler.add(model);
// for method #2
Controller controller = new Controller(model);
handler.add(controller);
console.setHandler(handler);
console.start();
}
}
Stackoverflow сообщение: «Это похоже на ваш пост в основном код; пожалуйста, добавьте больше деталей ". Большая часть кода предназначена для очистки, если код метода 1 или 2 не имеет смысла. Я думаю, что мой вопрос довольно вперед. Я не знаю, как изменить этот вопрос, чтобы избежать сообщения об ошибке.