Захватите параметры в абстрактных методах - PullRequest
0 голосов
/ 20 сентября 2018

Я пытаюсь создать Объект, серверы которого похожи на Runnable, но принимает определенные данные и задержки.Позже это будет включено в Timer, который я создаю как личный проект, но это не имеет значения.

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

В настоящее время все, кроме параметров, кажетсячтобы быть в порядке, все, что мне нужно сделать, - это выяснить, как их отслеживать.

@FunctionalInterface
public interface Task {

    AtomicLong delay = new AtomicLong(0);

    default long getDelay() {
        return delay.get();
    }

    default void setDelay(long milliseconds) {
        delay.set(milliseconds);
    }


    void execute(String... parameters);

    default Runnable wrap(String... parameters) {
        return () -> execute(parameters);
    }
}

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...