对比
| 静态变量 | 实例变量 |
---|
内存分配的空间 | 不同对象的同名静态变量分配相同的内存空间 | 不同对象的同名实例变量之间的取值互不影响 |
内存分配的时间 | 当类的字节码文件加载到内存时,静态变量就分配到了相应的内存空间 | 当类的对象创建时才会被分配内存 |
访问方式 | 可以用类名访问,也可以用对象名访问 | 必须用对象名访问 |
Java代码
package por2_class;
public class TestTeacher {
public static void main(String[] args) {
Teacher t1=new Teacher("admin_1","2424");
System.out.println("教师1的账号"+t1.name+" 密码"+t1.password);
System.out.println("静态变量count:"+t1.count+","+Teacher.count);
Teacher t2=new Teacher("admin_2","1234");
System.out.println("静态变量"+t1.count+","+Teacher.count);
}
}
class Teacher {
public String name;
public String password;
static int count=0;
public Teacher(String n,String p) {
name=n;
password=p;
count++;
}
public void introduce() {
System.out.println("姓名:"+name+"密码:"+password);
}
}
运行结果