当遇到业务逻辑中有一个方法不能直接为我们使用时

本文介绍了在业务逻辑处理中遇到特定方法不可用时的三种解决策略:覆盖、方法解耦及特殊化处理。覆盖适用于不影响原有业务的情况下直接修改方法;方法解耦则是将业务逻辑与实现分离,以达到复用的目的;特殊化处理则是在方法末尾加入条件判断,根据不同的业务需求返回特定结果。

2012年7月11日 17:50:33
 当遇到业务逻辑中有一个方法不能直接为我们使用时:
  1.覆盖
   如果是使用的多态机制,那么直接覆盖这个方法就行。但前提是,当我们覆盖后不会
   对原来的业务有所影响,影响的仅仅只是我们当前处理的业务。只有当前的业务会走
   到。
   
  2.方法解耦
   将方法中的业务代码与逻辑代码分开,做成一个两方都适用的方法。
   
  3.特殊化
   不推荐:比如一个方法的业务逻辑判断,最后结果要返回一个 true false 或 一个对象
    而我们的业务逻辑根本就不能走原来的业务逻辑判断,那么就在这个方法的最后加入
    代码,判断,如果是我们处理的逻辑(使用 instanceof 或其它)则直接返回我们所
    需要的 结果。
   这样做跟 覆盖 是一样的,只要不影响原有的业务逻辑即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值