更新时间:2025-08-19 GMT+08:00
分享

上/下移成员

“上移成员”重构允许用户将类成员移动到超类或接口。“下移成员”重构的作用则相反,允许用户将类成员移动到子类。

执行重构

  1. 在代码编辑器中,将光标放置在要向上拉或向下推类层次结构的字段或方法的声明上。
  2. 单击右键展示上下文菜单,选择重构 > 上移成员 / 下移成员

    在打开的“上移成员”“下移成员”对话框中,选择目标类并提供重构选项。
    • 选中要向上(向下)移动的类成员的复选框。
    • 对于方法,选中“设为抽象”复选框,将被移动的原始方法转换为抽象方法,并将其实现保留在原始类中。
    • “JavaDoc”选项中,提供JavaDoc注释应与移动的类成员一起移动、复制还是保持原样的选择。

      如下图所示:

      图1 上移成员
    • 单击“重构”以应用重构。

示例

作为示例,将“InnerClass”中的字段myField和方法print移动到超类“AbstractClass”中。

重构前

“com\refactoring\source\PullUp.java”文件内容如下:

class PullUp {

   public static void main(String[] args) {
      new InnerClass().print();
   }

   private static class InnerClass extends AbstractClass {
      public String myField;
      public void print() {
         System.out.println("Hello World");
      }
   }

   private static abstract class AbstractClass {
   }
}

重构后

上移成员“myField”“print”后,“com\refactoring\source\PullUp.java”文件内容如下:

class PullUp {

   public static void main(String[] args) {
      new InnerClass().print();
   }

   private static class InnerClass extends AbstractClass {
   }

   private static abstract class AbstractClass {
      public String myField;

      public void print() {
         System.out.println("Hello World");
      }
   }
}

相关文档