Convert to Instance Method refactoring is used to convert a static method to a non-static, class instance method, with a class being the type parameter of the initial method.
This refactoring is also available from UML Class diagram.
Consider classes MyClass, ClassB and ClassB residing in the same package. MyClass contains the following code:
After refactoring, MyClass and ClassB become:
- In the editor, place the caret on the declaration or usage of a method to be refactored. The method should be static and the types of its parameters should be the classes from the project. In other words, you cannot use such parameters types, as String.
- Do one of the following:
- On the menu, choose .
- Right-click the method and select .
The selected method must be static and must receive at least one of the classes included in the current project as a parameter.
- The Convert to Instance Method dialog appears.
- In the Select an instance parameter list select the class you want the method to belong to after the conversion. All the usages of this class inside the method are replaced with this.
- To change the visibility scope of the converted method, select the new scope in the Visibility area. By default the converted method will have no scope declaration (equivalent to public ).
- Preview and apply changes.