class level error : expected in java

后端 未结 4 532
陌清茗
陌清茗 2021-01-29 13:36

when I am coding this at class level

int a;
a=5;

it throws error : \"identifier expected\"

But when I declare it as a local variable li

4条回答
  •  無奈伤痛
    2021-01-29 14:06

    The reason following:

    int a=5;
    

    declared at class level does not produce compile time error when:

    void m1() {
        int a;
        a=5;
    }
    

    is declared because m1() has its own scope.

    For instance, if don't declare and access variable a, it would refer to class's field, where as when you declare a locally, you'd always refer to one declared inside a.

    PS : You cannot do following at class level:

    int a;
    a=5;
    

    You'd have to:

    int a=5;
    

提交回复
热议问题