image

编辑人: 沉寂于曾经

calendar2025-05-15

message6

visits655

说说静态变量和实例变量的区别?

分析&回答

可见范围

  • 成员变量只能被对象所调用 。静态变量可以被对象调用,也可以被类名调用。
  • 静态变量前要加static关键字,而实例变量前则不加。

存储不同

  • 成员变量数据存储在堆内存的对象中,所以也叫对象的特有数据。
  • 静态变量数据存储在方法区(共享数据区)的静态区,所以也叫对象的共享数据

生命周期不同

  • 成员变量与对象共存亡,随着对象创建而存在,随着对象被回收而释放
  • 静态变量与类共存亡,随着类的加载而存在,随着类的消失而消失(类不消失一直存在(不考虑回收机制),生命周期长)

反思&扩展

注意:成员变量(静态和非静态)、字符串常量池由方法区迁移到堆。

成员变量与局部变量的区别?

  • 成员变量的作用域是在类中;局部变量的作用域是在方法中
  • 成员变量可以不赋初值;局部变量必须赋初值

喵呜刷题:让学习像火箭一样快速,快来微信扫码,体验免费刷题服务,开启你的学习加速器!

创作类型:
原创

本文链接:说说静态变量和实例变量的区别?

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。
分享文章
share