更新时间:2024-04-12 GMT+08:00
提取超类
此重构允许您选定现有类的成员创建新的超类。这与内联超类相反。
执行重构
- 在代码编辑器中,将光标放置在要将其成员提取到超类中的任何位置。
- 在主菜单或编辑器上下文菜单中,选择Refactor>Extract Superclass。
- 在打开的Extract Superclass对话框中,提供重构参数。
- 提供提取的超类名称和包。
- 在Members to form superclass区域中,选择要提取的类成员。对于方法,选中Make abstract复选框,将提取的方法声明为超类中的abstract方法,并将其实现保留在原始类中。
- 在JavaDoc for abstracts 选项中,选择是将JavaDoc注释移动或复制到提取的超类,还是保持原样。
- 单击Refactor以应用重构。
示例
例如,让我们基于提取ExtractImpl类的print方法和myField字段创建一个新的ExtractAbstract超类。在创建的超类中,print方法将被声明为abstract。
重构前
class ExtractImpl { public int myField; public static void main(String[] args) { new ExtractImpl().print(); } public void print() { System.out.println("Hello World!"); } }
重构后
class ExtractImpl extends ExtractAbstract { public static void main(String[] args) { new ExtractImpl().print(); } @Override public void print() { System.out.println("Hello World!"); } } public abstract class ExtractAbstract { public int myField; public abstract void print(); }
父主题: 提取/引入重构