首页 > 代码库 > 重构第六天:用条件语句替换异常
重构第六天:用条件语句替换异常
在工作中经常遇到用异常去控制程序流程,下面是一个普遍的例子:
public class Microwave{ private IMicrowaveMotor Motor { get; set; } public bool Start(object food) { bool foodCooked = false; try { Motor.Cook(food); foodCooked = true; } catch (InUseException) { foodcooked = false; } return foodCooked; }}
异常应该是用来处理异常的行为的,对于上面的这种类型的代码,它们中的大部分都可以通过一个合适的条件语句进行替换。
public class Microwave{ private IMicrowaveMotor Motor { get; set; } public bool Start(object food) { if (Motor.IsInUse) return false; Motor.Cook(food); return true; }}
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。