Eclipse - 在使用具有意外类型的map.get时生成警告

时间:2016-02-01 19:12:25

标签: java eclipse eclipse-luna

Eclipse Luna(或更新的版本)中是否有一个设置可以在以下情况下显示警告:

Map<K, V> map = new HashMap<>();
map.get(val);

凡val的类型不是K? (警告应显示在第二行)

我知道上面的代码是有效的,因为Map.get将Object作为参数,但几乎在每种情况下都是我的错误,所以我希望显示一个警告。

2 个答案:

答案 0 :(得分:2)

Eclipse及其编译器旨在与Java编译器和形式语言规范保持一致。 javac编译器会在没有任何警告的情况下接受您的代码(即使启用了-Xlint),因为get方法需要Object

所以Eclipse没有理由提出自己的警告。看起来更像是像FindBugs这样的静态分析工具。

答案 1 :(得分:0)

IntelliJ Idea会在静态代码分析中为您提供警告。在eclipse中,您可以从市场上安装FindBugs,虽然该检查没有开箱即用,但您可以实现自己的错误检测器。 Check this out