静态变量 成员变量 局部变量的区别
书写位置
静态 :类中方法外 加了一个关键字 static
成员: 类中方法外 没有static
局部: 方法内
内存:
静态:方法区里面的静态区
成员:堆
局部:栈
生命周期
静态:随着类的加载而加载 随着类的消失而消失(虚拟机停掉才会消失)
成员:随着对象的创建而存在 随着对象消失而消失(当一个对象没有任何指向的时候 过一段时间垃圾回收器就会来清理)
局部:随着方法的调用而存在 随着方法的执行完毕而消失
初始化:
静态:有默认初始化
成员:有默认初始化
局部:没有了默认初始化 所以在使用之前必须先赋值
调用不同:
静态:类名可以调用 对象名也可以调用
成员:只能对象名调用
局部:只能在方法内部直接使用 无需在前面加限定 |
|