静态变量
- 使用关键词 static 修饰
- 静态变量(相当于 一个共享的变量 每个对象都能访问到)
-
- 静态变量的调用
- 1.可以调用对象直接调用(不建议)
- 2.使用类名直接调用(建议)
-
- 静态变量的特点,好处,应用场景,与成员变量的区别
- 静态变量的特点:1.随着类的加载而加载 2.优先于对象存在
- 3.是类创建出来的对象所共有的部分(共享)4.可以使用类名去调用
- 静态变量的好处:节省内存空间.
- 静态变量的应用场景:有共享的都可以用到静态变量
- 静态变量和成员变量的区别:1.所属不同2.内存中的存储位置不同
- 3.加载到内存中的时机不同(生命周期) 4.调用方法不同
- 静态变量:属于类,又叫类变量;存储在方法区的静态区中,随着类的加载而存在,可以用对象也可以用类去调用
- 成员变量:属于对象,所以可以叫对象变量或者实例变量;存储在堆内存中,
- 随着对象的产生而创建,随着对象的回收而结束,只能使用对象去调用
-
- 对象加载内存中的表现步骤
- 1.加载有main方法 类的class文件到 方法区中
- 2.main方法 入栈(需要参加Girl对象)
- 3.先把Girl.class加载到 方法区中
- 4.在堆内存中 开辟空间 创建 Girl 的对象
- 5.赋值方法入栈 出栈
- 6.main方法执行完毕 出栈
7.程序结束
“`
public static void main(String[] args) {
Girl girl1 = new Girl();
girl1.name = “西施”;
Girl.dynasty = “越国”;Girl girl2 = new Girl(); girl2.name = "王昭君"; girl2.dynasty = "西汉"; girl1.sayHi(); girl2.sayHi();
}
}
class Girl
{
String name;//姓名
static String dynasty;//朝代,用static修饰后,就变成了静态变量
// 介绍自己的方法
public void sayHi()
{
System.out.println(“我是”+name+”,朝代是”+dynasty);
}
“`