W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
此重構(gòu)也可從 UML 類圖中獲得。
通過 "刪除中間人" 重構(gòu),您可以替換在類中委托方法的所有調(diào)用,并直接對委托到的字段進行等效調(diào)用。此外,您還可以自動刪除類委托方法,現(xiàn)在將不使用。
如果您有一個簡單地將其許多方法調(diào)用轉(zhuǎn)發(fā)給其他類的對象的類,并且希望簡化您的設(shè)計,則此重構(gòu)非常有用。
操作前:
public class Foo {
Bar bar;
public Foo getImpValue() {
return bar.getImpValue();
}
}
public class Bar {
private Foo impValue1;
public Bar(Foo impValue) {
impValue1 = impValue;
}
public Foo getImpValue() {
return impValue1;
}
}
public class Client {
Foo a;
Foo impValue = a.getImpValue();
}
操作后:
public class Foo {
Bar bar;
public Bar getbar() {
return bar;
}
}
public class Bar {
private Foo impValue1;
public Bar(Foo impValue) {
impValue1 = impValue;
}
public Foo getImpValue(){
return impValue1;
}
}
public class Client {
Foo a;
Foo impValue = a.getbar().getImpValue();
}
如果受影響的文件是只讀的,則可能會顯示 "重構(gòu)預(yù)覽" 窗口。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: