重庆网站托管服务,合肥正规制作网站公司,乔括云智能建站,网站建设先做前台还是后台static 变量java static 是java中的一个关键字#xff0c;单词本身是静态的含义。一个类的成员包含变量、方法、构造方法
、代码块和内部类#xff0c;static可以修饰除了构造方法以外的所有成员使用static修饰的成员称为静态成员#xff0c;是属于某个类的#xff1b;而不…static 变量java static 是java中的一个关键字单词本身是静态的含义。一个类的成员包含变量、方法、构造方法
、代码块和内部类static可以修饰除了构造方法以外的所有成员使用static修饰的成员称为静态成员是属于某个类的而不使用static修饰的成员称为实例成员是
属于类的每个对象的。在类中用static声明的成员变量称为静态成员变量也称为类变量。类变量的生命周期和类相同在整
个应用程序执行期间都有效。它有如下特点
1、为该类的公共变量属于类被该类的所有实例分享在类被载入时被显式初始化。
2、对于该类的所有对象来说static成员变量只有一份。被该类的所有对象共享。
3、一般用“类名.类属性/方法”来调用。也可以通过对象引用或类名访问静态成员。
4、在static方法中不可直接访问非static的成员。
/*** static变量初体验*/
public class Student {//定义静态变量classRoomprivate static String classRoom;public static void main(String[] args) {System.out.println(Student.classRoom);//初始值为空Student.classRoom 503;System.out.println(Student.classRoom);Student stu new Student();//可以通过对象引用访问静态变量classRoomstu.classRoom 507;//static变量只有一份System.out.println(Student.classRoom);}
}执行代码如下 总结:static变量和非static变量的区别1、份数不同静态变量1份
非静态变量1个对象1份。2、存储位置不同静态变量方法区
非静态变量堆3、内存分配空间的时间不同静态变量第一次加载类的时候
非静态变量创建对象的时候4、生命周期不同静态变量和类的生命周期相同
非静态变量的生命周期和所属对象生命周期相同5、调用方式不同静态变量通过类名调用、也可以通过对象名来调用但不推荐
非静态变量通过对象名调用