强制执行“此”访问

时间:2011-04-13 15:17:18

标签: java

由于一些奇怪的要求(源代码的后期处理),我需要使用“this”。语法而不仅仅是成员变量名。有没有办法可以在编译时强制执行静态检查,以确保我使用“this”。而不是较短的等价物?

6 个答案:

答案 0 :(得分:19)

在Eclipse中,您可以进入Java /编译器/错误和警告/代码样式,并将“对实例字段的非限定访问”更改为“错误”而不是默认的“忽略”。

编辑:使用此更改混合到IDE(当然,如果您正在使用Eclipse)和checkstyle作为构建规则的一部分就足够了。

答案 1 :(得分:9)

你曾经使用过checkstyle吗?您可以在xml中定义代码样式规则并在编译时运行它。如果你关心,还有一个maven插件。

答案 2 :(得分:7)

Eclipse提供了配置清理工具的功能,以便为您执行此操作。enter image description here

答案 3 :(得分:2)

IntelliJ具有Instance field access not qualified with 'this'

的代码样式检查

它还可以为字段,类或模块更正此选项。这样的事情可以让你自己不得不触摸很多文件。

答案 4 :(得分:1)

您可以使用checkstyle来强制执行此类要求。

答案 5 :(得分:1)

您应该能够使用像CheckStyle这样的静态代码分析器在编译时完成此操作。

http://checkstyle.sourceforge.net/config_coding.html#RequireThis