以下代码,其中Config.PREFERENCES_ENABLE
是static final boolean
,产生编译器警告(在if
块之后的所有代码上,警告是“死代码”),并尝试在其上使用@SuppressWarnings("all")
会产生语法错误。我知道我在这里有点强迫症,但你知道它是怎么回事。
void displayPreferences() {
if(!Config.PREFERENCES_ENABLED) return;
startActivityForResult(
new Intent(this, PrefsActivity.class),
PREFERENCE_ACTIVITY);
}
答案 0 :(得分:3)
除了更改Eclipse编译器首选项外,还可以选择其他一些选项:
@SuppressWarnings("unused")
以禁止显示特定警告。final
中删除Config.PREFERENCES_ENABLED
以满足编译器。第一个选项至少允许您保持启用未使用的编译器警告,这可能在以后的其他代码部分中有用。如果您真的担心某些事情可能会在运行时发生变化(或者甚至是可取的),那么第二个选项可能并不理想。第三个选项的好处是不对硬件进行硬编码,并允许在外部文件中进行配置,无需重新编译代码即可更改。
答案 1 :(得分:1)
Window > Preferences > Java > Compiler > Errors/Warnings > Unused Code
我想。我没有在我面前打开Eclipse。您也可以使用首选项对话框中的过滤器框来查找它。
答案 2 :(得分:0)
你为什么不这样写呢?
void displayPreferences() {
if (Config.PREFERENCES_ENABLED) {
startActivityForResult(
new Intent(this, PrefsActivity.class),
PREFERENCE_ACTIVITY);
}
}