前言:
而今同学们对“java的回调”大概比较注意,看官们都需要知道一些“java的回调”的相关资讯。那么小编也在网摘上搜集了一些关于“java的回调””的相关知识,希望兄弟们能喜欢,我们一起来了解一下吧!适用人群
java程序员、准备面试的程序员、java后端开发、java服务端开发
吐槽
经常看到大牛写模板加回调的业务框架代码,我也很羡慕,所以平时多总结下。
demo我写过一个,但设计思想总喜欢忘记,在复习下。
模板设计代码例子
真正面试的时候,你能把设计的思想讲清楚,我相信面试官一定很喜欢你。
下面是我脑补的画面
面试官:这兄弟尽然会用模板回调设计,来吧程序员大兄弟20K。
程序员大兄弟:25K可以不。
面试官:可以。
现实情况光模板回调可能不行,还需要其他很多,如泛型、枚举等等、
我分3个类介绍下设计思路
思路在手,你也可以码出精彩
回调接口类
ProcessCallback 方法 Object execute();
也可以不单独设计接口,直接在模板类里加个内部类,意思把ProcessCallback变成内部类
这样够简单,可以把方法在细化些,如前置验证方法、execute、后置方法、finally
模板类【核心】
ServiceTemplate 方法 execute(ProcessCallback processCallback);
注意情况
可以设计成抽象类或(具体类加接口),很灵活的execute里参数可以根据情况添加,然后利用泛型方法ServiceTemplate<T extends 某基类对象>可以设计带泛型的,泛型方法用execute这个模板方法,里可以加日志、执行耗时、统一异常对象封装,异常设计可以单独在讲讲,优雅异常设计非常重要这里catch异常记得 业务Exception【自定义的】、Exception可以通过异常码类设计区分业务模块的异常,如通用异常、业务异常 ,业务异常还能细化,如 内容异常、消费异常等等。不复杂的话建议 通用、业务 两个异常码类就够了,通用、业务 两个异常码类 都实现相同接口,异常码的数字需要区分下如,1~100通用异常,100~200 内容异常 等等,生产上看到异常码数字可以非常快的定位出是那个具体异常,
高效快捷。
模板类里通用的逻辑都放这里啦。
客服端类
如 Controller.java、rpc接口、等其他入口类都是。
注意情况
把ServiceTemplate依赖过来,然后通过回调函数,专心写自己的业务逻辑即可
其他通用的逻辑,模板大哥都帮搞定了。
具体代码请看我这个例子
模板设计代码例子
感觉是干货的,点赞转发评论啊,关注下
标签: #java的回调