按子类进行断点过滤?

Breakpoint filter by subclass?

是否可以设置断点,使其仅在从 subclass 调用给定方法时停止?

即方法定义和断点设置都在 superclass 中。方法在 subclass 中未被覆盖,但会被调用。当它发生在给定的 subclass.

时,我只需要捕捉那些情况

这适用于跟踪高度分支的库中的错误使用。例如 class VeryCoolAncestor 被调用了 1000 次,而只有 1 次调用是我的 buggy class B.

我想知道在 Eclipse 中是否可行。如果在 Eclipse 中不可能,那么我想知道任何其他可能的调试器。

我需要自动化,所以我不需要知道在代码中插入测试调用或测试覆盖方法等变通方法。

您可以在 Eclipse 中使用条件断点。

右键单击断点,然后select "Breakpoint Properties",然后启用"Conditional"复选框并添加满足您要求的instanceof语句:


或者,您可以编写一个仅用于调试目的的块,包含一个语句:

if(someCondition) {
    System.out.println("Breakpoint here");
}