我有以下问题,我们甚至可以称之为经典问题:
public void myMethod(Map<Object, Object> parameter){
someOtherObject.method(parameter);
.
.
.
someOtherThirdPartyObject.method(parameter);
}
突然间,最后有些方法触及了输入参数Map,我不知道在哪里以及如何。现在,我知道使参数不可变是可取的,但事实并非如此,这就是问题的根源。例如,myMethod 中的方法旨在执行一些验证,但它们也执行更多操作,这在设计上是错误的。
那么,问题是如何在这个方法中创建一个断点,如果这个参数 Map 的一个属性发生变化,执行就会暂停?在每个方法调用之后放置一个条件断点可能是一个好主意,但是如果你有 20 多个方法,那就相当痛苦了。
当这个输入参数发生变化时,我该如何调试?