改为在if-else中调用子函数提高代码可读性, 让代码就像注释一样清楚
9.2 合并条件表达式
如果多个if检测条件不同但结果相同, 则用一个命名合适的函数将这多个if合在一起简化....这个重构要注意不要引发副作用且要保证语义的完整性和可读性
9.3 合并重复的条件片段
一组条件表达式中都出现了相同的代码, 那么将这段代码包装好并提炼到条件式外面
9.4 移除控制标记
尽量用break..., 让调用者提前测试并正常返回来避免引发异常
11 处理概括关系
11.1 字段上移
两个子类拥有相同字段时, 上移到基类, 注意别破坏访问控制性
11.2 函数上移
同11.1, 这类操作能大大减少测试难度...如果两个函数相似但不相同, 则可以试着用模板类来优化并提取
11.3 构造函数本体上移
只在子类中保留构造函数有区别的部分, 然后主体通过调用基类构造来实现
11.4 函数下移
11.2的反面, 主要是当一些子类完全用不到某个操作时下移...11.8 提炼接口
实际上就是多继承在Java中的替代品
11.9 折叠继承体系
将基类和子类合并
11.10 塑造模板函数
就是使用模板来提炼那些操作流程相似只是类型不同的函数.