What do @SuppressWarnings(“deprecation”) and (“unused”) mean in Java?

前端 未结 4 511
终归单人心
终归单人心 2020-12-13 12:20

What do these lines in my Java or Android project mean?

@SuppressWarnings(\"deprecation\")
@SuppressWarnings(\"unused\")
相关标签:
4条回答
  • 2020-12-13 12:23

    One more thing: you can not only add them inline, but also annotate methods. F.ex.

    @Override
    @SuppressWarnings("deprecation")
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        addPreferencesFromResource(R.xml.preferences);
    }
    

    Yet, it is recommended to use the smallest scope possible

    As a matter of style, programmers should always use this annotation on the most deeply nested element where it is effective. If you want to suppress a warning in a particular method, you should annotate that method rather than its class.

    0 讨论(0)
  • 2020-12-13 12:33

    In Java, @SuppressWarnings are use to restrict the compiler to show the certain warning on the console screen.

    E.g

    @SuppressWarnings("unused")
    CheckBox transferredField = new CheckBox("is transferred");
    

    if I don't use transferredField variable in my code then your Eclipse IDE never show the warning that you are not using this transferredField variable in your code.

    0 讨论(0)
  • 2020-12-13 12:38

    the @SuppressWarnings("unused") and others i have tried,but it don't work,and i always use the method say gradle in this project to

    lintOptions{
            checkReleaseBuilds false
            abortOnError  false;
            disable 'deprecation'
        }
    
        tasks.withType(JavaCompile) {
            options.compilerArgs << "-Xlint:unchecked" << "-Xlint:deprecation"
        }
    
    0 讨论(0)
  • 2020-12-13 12:42

    The @SuppressWarnings annotation disables certain compiler warnings. In this case, the warning about deprecated code ("deprecation") and unused local variables or unused private methods ("unused"). This article explains the possible values.

    0 讨论(0)
提交回复
热议问题