Eclipse 提供了打开字段声明、调用方法等的功能。
(F3或右键单击 => 打开声明或Ctrl + 单击调用的方法)
但是,在枚举方法的情况下,此功能不起作用,例如
MyEnum.values();
在我的代码中的某处被调用,并且尝试values()
使用上述组合打开声明显然不起作用。
为什么 Eclipse 不打开此类枚举方法的声明?
Eclipse 提供了打开字段声明、调用方法等的功能。
(F3或右键单击 => 打开声明或Ctrl + 单击调用的方法)
但是,在枚举方法的情况下,此功能不起作用,例如
MyEnum.values();
在我的代码中的某处被调用,并且尝试values()
使用上述组合打开声明显然不起作用。
为什么 Eclipse 不打开此类枚举方法的声明?
为什么 Eclipse 不打开此类枚举方法的声明?
因为它们根本没有在源代码中声明。它们是由编译器自动提供的——你希望被带到哪里?Ctrl-clicking MyEnum
(而不是values()
方法)应该打开枚举没有问题。
枚举类型 E 的成员如下:
- ...
以下隐式声明的方法:
/* javadoc... */ public static E[] values(); /* javadoc... */ public static E valueOf(String name);
请注意,正常的“转到声明”技术应该适用于源代码中真正存在的任何方法。