堆栈的内容------全局变量(实例变量)---静态变量等等
博客园的:https://www.cnblogs.com/Fanzifeng/p/7181980.html
- 实例变量(全局变量):独立于方法之外的变量,不过没有 static 修饰。
- 静态变量位于方法区,只有一份,在类加载完毕后,静态变量就存在了,静态变量属于类
/*
* 静态变量存在方法去
*/
public class TestStatic01 {
public static void main(String[] args) {
// 静态变量:类名.静态变量名方式直接访问静态变量
StaticValue st = new StaticValue();
// 非静态变量必须创建对象才能调用
st.a = 55;
// 静态变量调用
StaticValue.b=33;
/*
* 创建一个对象
*/
StaticValue staticValue = new StaticValue();
staticValue.a = 222;
StaticValue.b=99;
System.out.println("st中a的值:"+st.a);
System.out.println("静态中b的值:"+StaticValue.b);
System.out.println("动态staticValue中a的值:"+staticValue.a);
System.out.println("静态staticValue中b的值:"+StaticValue.b);
}
}
class StaticValue {
/*
* 全局变量包含:1.实例变量2.静态变量
*/
// 实力变量可以赋值也可以不赋值
int a = 2;
// 静态变量在类加载完毕后就存在的堆区,只有一份,静态变量属于类
static int b;
// 成员变量中不能定义静态变量
public void method() {
// static int c=2;
double c = 2.5;
}
}
------------结果--------------
st中a的值:55
静态中b的值:99
动态staticValue中a的值:222
静态staticValue中b的值:99