簡體   English   中英

Java-重構幾乎相同的方法

[英]Java - Refactor almost identical methods

我有一個看起來像這樣的方法:

private void method(final Param one, final Param two) {
    Code Block
    CallToAnotherMethod() 
}

從2個地方調用此方法。 在其中一個地方,我想按原樣調用整個方法。 其次,我只想執行Code Block而不要執行CallToAnotherMethod()

我應該如何重構呢? 用99%的相同代碼實現2種方法似乎不太好。

在此先感謝您的建議。

沒有對實際代碼的任何了解,很難正確地判斷它。 與任何一般性問題一樣,我們只能提供一般性答案。

private void method(final Param one, final Param two) {
    methodForCodeBlock(one, two);
    callToAnotherMethod() 
}

private void methodForCodeBlock(final Param one, final Param two) {
    // code block here
}

private void callToAnotherMethod() {
    ...
}

要僅執行代碼塊,請調用methodForCodeBlock(...) 要執行所有操作,請調用method(...)

這邊有

private void method(final Param one, final Param two) {
    codeBlockMethod() 
    CallToAnotherMethod() 
}


private void method2(final Param one, final Param two) {
    CallToAnotherMethod() 
}

private void codeBlockMethod() {
    Code Block
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM