文章目录
1. 重复的 Switch
定义
:在不同的地方反复使用同样的 switch 逻辑。
影响
:影响可维护性:每当需要增加一个选择分支时,必须找到所有的 Switch,并逐一修改。
重构目标
:消除重复的 Switch,提升代码可修改/可扩展能力。
重构方法
:
- 多态取代条件表达式。1)多态 + 工厂:参考工厂模式;2)多态+提供不同实现类:参考List——ArrayList、LinkedList等
常见特点
:
- 同样的 Switch 逻辑反复出现
重构中可能用到的快捷键操作
:
操作 | 快捷键 |
---|---|
创建子类 | Alt + Enter -> Create subclass |
用工厂方法替换构造方法 | Replace Constructor with Factory Method |
多态返回子类对象 | 手动 |
方法搬移 | F6 |
静态方法变为实例方法 | Ctrl + Alt + Shift + T -> Convert To Instance Method 鼠标右键 -> refactor -> Convert To Instance Method |
方法下移到子类 |