如何在Eclipse中通过悬停显示变量值并自定义悬停输出?
当然可以调整Eclipse调试时的悬停显示内容!刚好我之前也遇到过类似的需求,下面给你两种实用的解决方法,完美匹配你提到的场景:
方法一:给自定义对象重写
toString()方法 Eclipse调试时,默认会调用对象的toString()方法来展示悬停信息,所以给你的myObject类重写这个方法,就能直接控制显示内容:
public class myObject { private String name; private int value; // 这里省略构造器、getter/setter方法 @Override public String toString() { return "name=" + name + ", value=" + value; } }
设置完成后,当你悬停list.get(i)或者它的name属性时,就能看到类似name=Test, value=1的清晰内容,完全符合你的需求。
方法二:用Eclipse的「Detail Formatters」自定义显示(无需修改代码)
如果不想改动业务代码,也可以直接通过Eclipse的调试配置来实现:
- 打开Eclipse顶部菜单的Window > Preferences
- 在左侧导航栏找到Java > Debug > Detail Formatters
- 点击右侧的Add按钮,在弹出的配置窗口中:
- 在「Type」输入框里填写你的对象类名,比如
myObject - 在「Formatter code」输入框中编写自定义显示逻辑,比如:
return "name=" + this.name; - 勾选「Enable this detail formatter」,然后点击OK保存配置
这样设置后,调试时悬停myObject实例或它的属性,就会显示你指定的格式内容了。
- 在「Type」输入框里填写你的对象类名,比如
针对你场景的小补充
如果只是想悬停name属性时直接看到它的值,其实Eclipse默认就支持这个功能,你可以检查一下是否开启:
- 同样进入Window > Preferences > Java > Debug
- 确保「Show variable details in hover」选项处于勾选状态
另外,在调试视图里右键变量,选择Show Details,也能快速查看属性的具体值。
内容的提问来源于stack exchange,提问作者Thomas
相关产品推荐
相关产品推荐

