文档首页> CodeArts IDE> 用户指南> Java> 重构> 将匿名类转换为内部类
更新时间:2024-04-12 GMT+08:00
分享

将匿名类转换为内部类

此重构允许您将匿名类转换为重命名的内部类。

执行重构

  1. 在编辑器中,将光标放置在要转换为内部类的匿名类表达式中的任何位置。
  2. 在主菜单或编辑器上下文菜单中,选择Refactor>Convert Anonymous To Inner。
  3. 在打开的Convert Anonymous To Inner对话框中,提供重构参数。

    • 提供内部类的名称并选择是否将其创建为静态类。
    • Constructor Parameters区域中,提供要用作类构造函数参数的变量的名称。使用工具栏按钮对参数重新排序。

  4. 单击Refactor以应用重构。

示例

例如,让我们将用作方法返回值的匿名类表达式转换为内部静态类MyTestClass

重构前

class AnonymousToInner {
   public TestClass method() {
      final int i = 0;
      final String str = "string";
      return new TestClass() {
         public String str () {
            return str;
         }
         public int publicMethod() {
            return i;
         }
      };
   }
}

重构后

class AnonymousToInner {
   public TestClass method() {
      final int i = 0;
      final String str = "string";
      return new MyTestClass(str, i);
   }

   private static class MyTestClass extends TestClass {
      private final String str;
      private final int i;

      public MyTestClass(String str, int i) {
         this.str = str;
         this.i = i;
      }

      public String str () {
         return str;
      }

      public int publicMethod() {
         return i;
      }
   }
}
分享:

    相关文档

    相关产品