Replace constructor with factory method
The Replace Constructor With Factory Method refactoring lets you hide a constructor and replace it with a static method which returns a new instance of a class.
Select the class constructor.
On the main or context menu, select
.In the dialog that opens, specify the name of the factory method and the class where the method should be created.
Preview and apply the changes.
Example
Before | After |
---|---|
// File Class.java
public class Class {
public Class(String s) {
...
}
}
// File AnotherClass.java
public class AnotherClass {
public void method() {
Class aClass = new Class("string");
}
}
|
// File Class.java
public class Class {
private Class(String s) {
...
}
public static Class createClass(String s) {
return new Class(s);
}
}
// File AnotherClass.java
public class AnotherClass {
public void method() {
Class aClass = Class.createClass("string");
}
}
|
Last modified: 08 March 2021