Рубрики
Без рубрики

Как написать функцию обратного вызова в Java

Это моя первая статья о dev.to и программирование в целом. Недавно я разработал приложение для своего компьютера… С пометкой java, новички.

Это моя первая статья о dev.to и программирование в целом. Недавно я разработал приложение для своей компании после завершения, я пытался очистить свой код и провести некоторый рефакторинг, когда я наткнулся на блок, в котором у меня есть два похожих кода, единственная разница заключалась в вызове другого метода, я был немного новичком в Java, но знаком с JavaScript, был озадачен тем, как я могу преобразовать эту строку в метод, передать ссылку на метод в качестве параметра метода, это было немного сложно, но я смог заставить его работать с помощью интерфейса. ниже можно найти небольшой фрагмент о том, как я это реализовал.

public class MyClass {
    public static void main(String args[]) {
      myMethod(new GenericMethod(){
          public String call() {
              return "One";
            }
      });
       myMethod(new GenericMethod(){
        public String call() {
          return "Two";
        }
        });

        myMethod(() -> {
                return "Three";
        });
    }

    public static void myMethod(GenericMethod g) {
        System.out.println("This method called " + g.call());
    }  
    public interface GenericMethod {
        public String call();
    }
}

Я создал интерфейс Универсальный метод только с одним методом вызов() затем создал метод myMethod с Универсальный метод в качестве параметра метода я вызвал Универсальный метод.вызов() внутри моего метода. чтобы вызвать Мой метод Я просто передаю новый экземпляр Универсальный метод и переопределите метод call() . Вы можете сделать код более чистым, используя обозначения со стрелками вместо ключевого слова new

This method called One
This method called Two
This method called Three

Оригинал: “https://dev.to/kdfemi/how-to-write-a-callback-function-in-java-3bik”