【发布时间】:2018-06-06 13:55:57
【问题描述】:
如果我重载toString(),IntelliJ 中的调试器将在变量选项卡中的相关对象附近显示Object.toString() 结果。
如果toString 被重载为:return "Test1: This is toString overload";:
有时,我想在调试中看到的与一般的toString 重载不同。我知道可以为特定类型/类/等设置另一个表达式,但只能从设置中。
有没有办法(全局)设置任意函数名,当这样的函数存在时,该函数名将优先于toString?
例如:
如果Object.toDebuggerString() 存在,则使用它,否则 - 使用Object.toString()。
class Test1 {
@Override
public String toString() {
return "Test1";
}
}
class Test2 {
@Override
public String toString() {
return "Test2";
}
public String toDebuggerString() {
return "Testing debugging mode";
}
}
【问题讨论】:
-
看来你可以定义Java data type renderers。
标签: java debugging intellij-idea