我有一个看起来像这样的方法:
private void method(final Param one, final Param two) {
Code Block
CallToAnotherMethod()
}
此方法从两个地方调用。在其中一个地方,我想按原样调用整个方法。其次,我只想执行代码块
,而不执行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(...)
。
关于Java - 重构几乎相同的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47442758/