static不能修饰局部变量理解

来源:互联网 发布:floyd算法结果 编辑:程序博客网 时间:2024/06/15 11:06

在java中,首先,被static修饰,表示是随着jvm加载类的时候就加载了。

 

理解一:假如,用static修饰一个变量,jvm就理解为你需要延长该字段的生命周期,既然是延长,就直接申明为全局变量就行了三,所以报错修饰局部变量,类在,static在;

 

理解二:假如可以用static修饰局部变量,就表示此变量在所在类被jvm加载的时候就初始化加载了。但是方法和对象相关的,而方法只有在被调用的时候才有意义,你在加载类的时候还没有调用方法,就把方法里的局部变量加载了,这就显的没有必要意义了。所以没必要修饰局部变量。

 

    此时可能就会有异议了:为什么static可以修饰一个方法呢?

    可以这样理解:

                     一个方法被static修饰,即表示和所在类被jvm同时加载。类被加载完成的同时,这个方法就已经准备好了,所以以后我们在调用被static修饰的方法的时候,就直接用加载好的类名直接调用已经加载好的方法就可以了。当然你也可以申明一个该类的对象来调用次方法。

    

原创粉丝点击