Java Callback

weixin_33860553發表於2017-04-24

1.先定義一個Callback介面,裡面有些許方法。

2.假設此時有一個A類,它想做一些事,但是又不知道具體做什麼事,想等到有人呼叫它的時候再做,那麼此時就需要用到回撥。

3.先在A類裡面宣告一個Callback介面的引用,再增加一個方法可以呼叫該方法以設定和實現callback,從而確定A到底要做什麼。接著在A類宣告呼叫介面callback的某些方法(這些方法就是A最後要做的事情)

4.某個類想讓A做一些事,此時對A進行例項化,然後呼叫A的setcallback的設定A要做的事,接著呼叫A裡面可以執行callback介面裡面的方法的方法。從而使得A做了由其他類交給他事情。


4544491-2fa443a22a58a88d.png
回撥介面


4544491-a63ef3d938691f6d.png
被呼叫的類


4544491-654d8c8e300a4e9e.png
呼叫A的類

回撥的三種呼叫方式:

1.通過匿名內部類


4544491-829e0a16c0c07cf0.png
通過匿名內部類實現回撥

2.傳入實現了CallBack介面的類實現回撥


4544491-d2a7f65ed735f7c2.png
通過B類實現回撥


4544491-332caabed191a24d.png
實現了介面的B類

3.通過呼叫類實現介面,實現回撥


4544491-5e529954ea53512a.png
通過實現介面實現回撥

相關文章