消除构建同一对象的类似副本的重复代码

per*_*son 1 java duplication

我有两个类都构建一个对象,目前这两个类中都有重复的代码,例如这个代码存在于类1中:

new Object("a", "b", "c");
Run Code Online (Sandbox Code Playgroud)

只有构造函数的一个参数有所不同.所以这个代码存在于第2课:

new Object("x", "b", "c");
Run Code Online (Sandbox Code Playgroud)

是否有任何模式可以摆脱这个代码重复?

Pet*_*rey 5

您可以向该类添加构造函数.

class MyObject {
    MyObject(String a) {
       this(a, "b", "c");
    }

    MyObject(String a, String b, String c) {
    }
}
Run Code Online (Sandbox Code Playgroud)