千锋教育-做有情怀、有良心、有品质的职业教育机构

400-811-9990
手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

上海
  • 北京
  • 郑州
  • 武汉
  • 成都
  • 西安
  • 沈阳
  • 广州
  • 南京
  • 深圳
  • 大连
  • 青岛
  • 杭州
  • 重庆
当前位置:深圳千锋IT培训  >  技术干货  >  静态变量和实例变量有哪些区别?

静态变量和实例变量有哪些区别?

来源:千锋教育
发布人:xqq
时间: 2023-10-19 10:26:23

一、静态变量和实例变量的区别

1、存储区域不同

静态变量存储在静态存储区域,实例变量存储在堆中,会被释放。

2、生命周期不同

静态变量在类启动时就分配指定内存;实例变量在被对象调用后才分配内存,调用结束时内存释放。

3、程序运行不同

实例变量属于某个对象的属性,必须创建了实例对象,其中的实例变量才会被分配空间,才能使用这个实例变量。而静态变量不属于某个实例对象,而是属于类,所以也称为类变量,只要程序加载了类的字节码,不用创建任何实例对象,静态变量就会被分配空间,静态变量就可以被使用了。总之,实例变量必须创建对象后才可以通过这个对象来使用,静态变量则可以直接使用类名来引用。

4、语法定义不同

静态变量用static修饰,实例变量没有static修饰。

延伸阅读:

二、什么是静态变量

静态变量 类型说明符是static。 静态变量属于静态存储方式,其存储空间为内存中的静态数据区(在 静态存储区内分配存储单元),该区域中的数据在整个程序的运行期间一直占用这些存储空间(在程序整个运行期间都不释放),也可以认为是其内存地址不变,直 到整个程序运行结束(相反,而auto自动变量,即动态局部变量,属于动态存储类别,占动态存储空间,函数调用结束后即释放)。 静态变量虽在程序的整个执 行过程中始终存在,但是在它作用域之外不能使用。 另外,属于静态存储方式的量不一定就是静态变量。 例如:外部变量虽属于静态存储方式,但不一定是静态变量,必须由 static加以定义后才能成为静态外部变量,或称静态全局变量。

以上就是关于静态变量和实例变量的区别的内容了,希望对大家有帮助。

声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。

猜你喜欢LIKE

LAMP和hadoop的关系是什么?

2023-10-19

大数据平台能力有哪些内容?

2023-10-19

数字经济和大数据时代有什么区别?

2023-10-19

最新文章NEW

cs与bs架构的区别与优缺点?

2023-10-19

递归和递推有哪些区别?

2023-10-19

error和exception区别?

2023-10-19

相关推荐HOT

更多>>

快速通道 更多>>

最新开班信息 更多>>

网友热搜 更多>>