Sobes.tech
Back to questions
Junior — Middle
102

Какими методами можно реализовать вызов callback-функции в Java Bean?

Companies where asked
СБЕР Бизнес

Answer from AI

sobes.tech AI

В Java Bean вызов callback-функции можно реализовать несколькими способами:

  1. Использование интерфейса с методом обратного вызова. Создаётся интерфейс с методом callback, который реализует другой класс. В Bean передаётся ссылка на объект с реализацией интерфейса, и вызывается метод.

  2. Использование лямбда-выражений или функциональных интерфейсов (начиная с Java 8). Можно передавать функциональный интерфейс (например, Consumer, Runnable) и вызывать его метод.

  3. Через события и слушатели (Listener). Bean может поддерживать регистрацию слушателей и вызывать их методы при наступлении события.

Пример с интерфейсом:

public interface Callback {
    void call();
}

public class MyBean {
    private Callback callback;

    public void setCallback(Callback callback) {
        this.callback = callback;
    }

    public void doWork() {
        // какая-то логика
        if (callback != null) {
            callback.call();
        }
    }
}

// Использование:
MyBean bean = new MyBean();
bean.setCallback(() -> System.out.println("Callback called!"));
bean.doWork();