IntelliJ IDEA 2025.1 Help

转换为实例方法

Convert to Instance Method 重构允许您将静态方法转换为非静态类实例方法,类是初始方法的类型参数。

  1. 在编辑器中,将文本光标放在您要重构的方法声明或用法处。 该方法应为 static ,其参数的类型应为项目中的类。 还请注意,您不能使用这样的参数类型: String

  2. 前往 重构 | 转换为实例方法

    您也可以使用上下文菜单来访问此重构。

  3. 在打开的对话框中,选择转换后方法所属的类。 该方法中此类的所有使用都被替换为 this

    如果需要,请更改已转换方法的可见范围。

  4. 预览并应用更改。

示例

请考虑同一个包中的类 MyClassClassBClassB

因此, MyClassClassB 被转换。

public class MyClass { ClassA classA = new ClassA(); ClassB classB = new ClassB(); static public void greatMethod(ClassA classA, ClassB classB){ System.out.println("classA = " + classA); System.out.println("classB = " + classB); } public void myMethod(){ MyClass.greatMethod(classA, classB); } }
public class MyClass { ClassA classA = new ClassA(); ClassB classB = new ClassB(); public void myMethod(){ classB.greatMethod(classA); } } public class ClassB { public void greatMethod(ClassA classA) { System.out.println("classA = " + classA); System.out.println("classB = " + this); } }

转换为实例方法对话框

当您调用 转换为实例方法 重构时,将出现此对话框。

条目

描述

选择一个实例参数

选择转换后希望该方法归属的类。 该方法中此类的所有使用都被替换为 this

可见性

在此区域,您可以更改转换方法的可见性范围。 默认情况下,转换后的方法将没有作用域声明(等同于 public)。

最后修改日期: 2025年 4月 24日