Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //определяем функциональный интерфейс:
- package sample;
- public interface EventListener {
- void dispatch(String s);
- }
- // прописываем лямбда выражение
- EventListener listener = e -> {
- if (e.equals(snake.CHANGE_IS_LIVE)) // будем проверять типы событий
- System.out.println("new event: " + e); // логика ...
- };
- snake.setListener(listener); // устанавливаем слушатель на дочерний объект
- // на пока просто константы, можно сделать перечисление ENUM (типы событий)
- String CHANGE_IS_LIVE = "[change is live]";
- String CHANGE_IS_MOVE = "[change is move]";
- private EventListener listener; // ссылка на обработчик
- public void setListener(EventListener l) {
- this.listener = l;
- }
- public void dispatch() {
- listener.dispatch(CHANGE_IS_LIVE); // собственно создаем событие <-
- }
Add Comment
Please, Sign In to add comment