2
在我的一個類的構造函數調用看起來是這樣的:如何擺脫這個()構造函數中的長調用?
API() {
this(
(new Client.ClientBuilder(AnotherClas.get(YetAnotherClass.class).getA(),
AnotherClas.get(YetAnotherClass.class).getBt()))
.withF(YetAnotherClass.class).build(),
(new Client.ClientBuilder(AnotherClas.get(YetAnotherClass.class).getA(),
AnotherClas.get(YetAnotherClass.class).getB())
.withE(AnotherClas.get(YetAnotherClass.class).getC())
.withD(AnotherClas.get(YetAnotherClass.class).getD())).build(),
(new Client.ClientBuilder(
AnotherClas.get(YetAnotherClass.class).getA(),
AnotherClas.get(YetAnotherClass.class).getB())
.withY(AnotherClas.get(YetAnotherClass.class).build()
);
}
在現實中,它甚至更糟,因爲我模糊的類和方法名。
我正在使用Builder模式來生成客戶端,我的第一個想法是首先生成三個客戶端,然後在構造函數調用中傳遞變量。
但是,由於這發生在構造函數中,所以對它的調用必須是第一條語句。有什麼我可以做的嗎?
也許分開一個'addClient()'方法,可以多次調用它。在這種情況下3.至少'API'對象將通過它的'init'階段 – CraigR8806
嗯,這是完全有道理:)謝謝! –