java的静态变量和实例变量的区别是什么?
内容摘要
静态变量属于类的级别,而实例变量属于对象的级别。静态变量和实例变量的主要区别有两点:1、存放位置不同类变量随着类的加载存在于方法区中,实例变量随着对象的对象的建立存在
文章正文
静态变量属于类的级别,而实例变量属于对象的级别。
静态变量和实例变量的主要区别有两点:
1、存放位置不同
类变量随着类的加载存在于方法区中,实例变量随着对象的对象的建立存在于堆内存中。
2、生命周期不同
类变量的生命周期最长,随着类的加载而加载,随着类的消失而消失,实例变量随着对象的消失而消失。
静态的使用注意事项:
1、静态方法只能访问静态成员(包括成员变量和成员方法),不能访问非静态成员或方法。
非静态方法可以访问静态也可以访问非静态方法或成员。
2、静态方法中不能出现this,super关键字。
因为静态是优先于对象存在的,所以不能出现this,super关键字
3、主函数是静态的。
代码注释
[!--zhushi--]