我的项目中这些行是什么意思?Android中的@SuppressWarnings(“deprecation”)和(“unused”)是什么?
@SuppressWarnings("deprecation")
@SuppressWarnings("unused")
我的项目中这些行是什么意思?Android中的@SuppressWarnings(“deprecation”)和(“unused”)是什么?
@SuppressWarnings("deprecation")
@SuppressWarnings("unused")
@SuppressWarnings
注解禁用某些编译器警告。在这种情况下,有关不推荐使用的代码("deprecation"
)和未使用的局部变量或未使用的私有方法("unused"
)的警告。 This article explains the possible values.
在Java中,@SuppressWarnings
用于限制编译器在控制台屏幕上显示特定警告。
E.g
@SuppressWarnings("unused")
CheckBox transferredField = new CheckBox("is transferred");
如果我不使用我的代码transferredField
变量然后Eclipse IDE中从来没有表现出你是不是在你的代码中使用这个变量transferredField
警告。
的@SuppressWarnings("unused")
等我都试过了,但它不工作,我一直使用的方法的gradle说在这个项目
lintOptions{
checkReleaseBuilds false
abortOnError false;
disable 'deprecation'
}
tasks.withType(JavaCompile) {
options.compilerArgs << "-Xlint:unchecked" << "-Xlint:deprecation"
}
请不要在整个项目中禁用警告。禁用警告的范围应该是您可以达到的最具体的级别,您可以确切地知道为什么可以忽略您的情况。为整个项目隐藏它们也会隐藏你应该考虑改变而不是忽略的合理问题。 –
一件事:你不仅可以增加他们在线,还有annotate methods。 F.ex.
@Override
@SuppressWarnings("deprecation")
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preferences);
}
但是,建议使用最小范围可能
作为一个风格问题,程序员应该始终使用此批注它是有效的嵌套最深的元素。如果你想在特定的方法中抑制警告,你应该注释该方法而不是其类。
不错的答案@nfechener –