码迷,mamicode.com
首页 > 其他好文 > 详细

回调模式【其他模式】

时间:2018-12-24 20:59:59      阅读:114      评论:0      收藏:0      [点我收藏+]

标签:assert   code   rri   over   定义   abs   extends   class   set   

回调模式

@Slf4j
public class CallBack {

    /**
     * 回调模式更适合于函数式编程语言。
     */
    @Test
    public void all() {
        final SimpleTask task = new SimpleTask();
        task.execute(r -> {
            log.info("do callback");
            assertEquals("hello", r);
        });
    }
}

// 1)定义回调接口
interface ICallBack {
    void call(String t);
}

@Data
abstract class Task {
    private String result;

    public void execute(ICallBack callBack) {
        dowork();
        callBack.call(result);
    }

    protected abstract void dowork();
}

@Slf4j
class SimpleTask extends Task {

    @Override
    protected void dowork() {
        log.info("dowork now");
        setResult("hello");
    }
}

回调模式【其他模式】

标签:assert   code   rri   over   定义   abs   extends   class   set   

原文地址:https://www.cnblogs.com/zhuxudong/p/10170825.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!