回調函數

回調函數指的是A方法調用B方法進行運算,但B方法在運行的過程當中須要A方法指定如何運行,因此定義了一個接口,讓B方法實現了只要實現了這個接口的類的對象均可以做爲入參在B函數中執行。java

所以,在B方法執行的過程當中,須要調用重寫的A方法中的入參所規定的執行方法,這個過程就叫作函數回調,所以相比於普通的函數有更大的靈活性,不少的api中就是用到了這一方法。api

例子:ide

B方法(被調用的方法):函數

public class Test {
    public int count(int num1, int num2, Testhandler count) {
        return count.doCount(num1, num2);
    }
}

 

約定的接口:code

public interface Testhandler {
    public int doCount(int num1, int num2);
}

A方法(執行的函數):對象

public class Test002 {
    public static void main(String[] args) {
        int result = new Test().count(10, 20, new Testhandler() {
            @Override
            public int doCount(int num1, int num2) {
                return num1 + num2 + num1/num2 + num1*num2;
            }
        });
        System.out.println(result);
    }
}

顯然,最終的結果是Test方法在執行的過程當中回調了Test002中的所定義的具體的執行方法。接口

這一應用很是普遍。回調函數

相關文章
相關標籤/搜索
本站公眾號
   歡迎關注本站公眾號,獲取更多信息