社区
Java SE
帖子详情
为什么在定义一个类的时候,静态的变量,比实例变量节省内存空间
降降降
2020-07-17 01:03:20
为什么说在同一个类型有相同的属性,把这个属性定义为静态的会比非静态的变量更节省空间?
...全文
854
4
打赏
收藏
为什么在定义一个类的时候,静态的变量,比实例变量节省内存空间
为什么说在同一个类型有相同的属性,把这个属性定义为静态的会比非静态的变量更节省空间?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
陆海潘江小C
2020-07-17
打赏
举报
回复
对的,类中定义静态变量或者方法,是类所有的,相当于共享的,而非静态的需要创建类的对象时候(实例化),属于对象自身的。所以会有你的这种说法。另外,访问静态变量或方法可以通过类名或者对象,建议用类名访问更好。
sunyiz
2020-07-17
打赏
举报
回复
引用 2 楼 降降降 的回复:
可以说实例变量每个对象都有一个,静态变量的是大家共用一个内存吗?
嗯,
静态属性,是属于“类”的属性
非静态属性,是属于“对象”或者说“实例”的属性
但是静态属性也不可滥用
毕竟对象的属性占用的内存,在对象被回收后,就收回了
而类的属性在被加载之后,将始终占据在内存中
降降降
2020-07-17
打赏
举报
回复
可以说实例变量每个对象都有一个,静态变量的是大家共用一个内存吗?
烟花散尽13141
2020-07-17
打赏
举报
回复
static表示静态,也可以理解成全局的意思。 通过new出来的实例是new一次就开辟一次内存空间。 而static是程序运行期间开启空间。生命周期是整个项目。而且只会创建一次。 在JVM中他也是存在【方法区】中的。 结论: 在程序中static始终只有一份。是所有类的实例共享。而非静态变量是挂载在实例上的。一个实例就独有一份非静态属性 关注我,不定时更新java学习
java
静态
变量
和
实例
变量
静态
变量
是使用static关键字修饰的
变量
,它属于
类
本身,而不是某个具体的
实例
。无论创建了多少个
类
的对象,
静态
变量
在内存中都只有一个拷贝,并且所有
实例
共享这同一个
静态
变量
。在这个例子中,staticVar是一个
静态
变量
,它属于Example
类
,而不是某个特定的Example对象。
静态
变量
:属于
类
本身,所有
实例
共享同一个
变量
。它在内存中只有一份,生命周期随
类
的加载和卸载而存在,适合用于共享数据、全局状态和常量定义。需要注意多线程环境下的同步问题。
实例
变量
:属于对象
实例
,每个对象都有自己独立的
变量
副本。
java
静态
变量
如果
类
的所有
实例
都包含一个相同的常量属性,则可以把这个属性定义为
静态
常量
类
型,从而
节省
内存空间
。
静态
变量
可以被
类
的所有
实例
共享,因此
静态
变量
可以作为
实例
之间的共享数据,增加
实例
之间的交互性。运行时,Java 虚拟机只为
静态
变量
分配一次内存,在加载
类
的过程中完成
静态
变量
的内存分配。
静态
变量
(或称为
类
变量
),指被 static 修饰的成员
变量
。在
类
的内部,可以在非
静态
方法中直接访问
实例
变量
。在
类
的内部,可以在任何方法内直接访问
静态
变量
。在其他
类
中,可以通过
类
名访问该
类
中的
静态
变量
。
类
变量
、成员
变量
、
实例
变量
、局部
变量
、
静态
变量
、全局
变量
的区别
类
体由2部分构成: 一部分是
变量
的定义; 一部分是方法的定义(一个
类
中可以有多个方法) 在
变量
定义部分定义的
变量
叫做
类
的成员
变量
,成员
变量
在整个
类
中都有效. (全局
变量
应该是成员
变量
的俗称) 在方法体中定义的
变量
叫做局部
变量
,局部
变量
只在定义它的方法中有效. 成员
变量
又分为
实例
变量
和
类
变量
(static
静态
变量
). class One {
Python
类
变量
与
实例
变量
:深入理解与实际应用
类
变量
和
实例
变量
是Python面向对象编程中的核心概念,它们各自有着独特的作用和应用场景。通过理解它们的定义、特性和用法,我们可以更好地设计
类
和对象,提高代码的可维护性和可复用性。在实际开发中,我们需要根据实际需求选择使用
类
变量
还是
实例
变量
,并注意它们之间的访问方式和修改方式,以避免潜在的问题和错误。希望本文能够帮助初学者更好地理解Python
类
变量
和
实例
变量
的概念和应用,为后续的面向对象编程学习打下坚实的基础。同时,也鼓励读者通过更多的实践来加深对这两个概念的理解和应用。
类
变量
、成员
变量
、
实例
变量
、局部
变量
、
静态
变量
、全局
变量
的解释。
类
体由2部分构成: 一部分是
变量
的定义; 一部分是方法的定义(一个
类
中可以有多个方法) 在
变量
定义部分定义的
变量
叫做
类
的成员
变量
,成员
变量
在整个
类
中都有效. (全局
变量
应该是成员
变量
的俗称) 在方法体中定义的
变量
叫做局部
变量
,局部
变量
只在定义它的方法中有效. 成员
变量
又分为
实例
变量
和
类
变量
(static
静态
变量
). class One { f
Java SE
62,635
社区成员
307,269
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章