如标题,J8之前普通变量存放在堆中,静态变量存在方法区,J8都放在堆里,那还有什么区别对于内存方面来说
3条回答 默认 最新
- 张小帅和刘美美 2021-04-20 11:35关注
不同点:
1,存在的内存区域不同,--成员变量存在于堆内存中,静态变量存在于静态区中
2,数量不同: ---- 成员变量是属于单个对象实例的,有多少个对象同一个成员变量就会创建多少次, 成员变量是和对象一一对应的
但是一个 类 同一个静态变量只会存在一个,供所有对象使用
3,生命周期不同 ----成员变量随着对象的创建而存在,随着对象的消失而消失,静态变量随着类的存在而存在,随着类的消失而消失
4,初始化时机不同 --- 成员变量在对象创建时初始化,静态变量在类加载的时候初始化
解决 1无用
悬赏问题
- ¥15 angular项目错误
- ¥20 需要帮我远程操控一下,运行一下我的那个代码,我觉得我无能为力了
- ¥20 有偿:在ubuntu上安装arduino以及其常用库文件。
- ¥15 请问用arcgis处理一些数据和图形,通常里面有一个根据点划泰森多边形的命令,直接划的弊端是只能执行一个完整的边界,但是我们有时候会用到需要在有很多边界内利用点来执行划泰森多边形的命令
- ¥30 在wave2foam中执行setWaveField时遇到了如下的浮点异常问题,请问该如何解决呢?
- ¥750 关于一道数论方面的问题,求解答!(关键词-数学方法)
- ¥200 csgo2的viewmatrix值是否还有别的获取方式
- ¥15 Stable Diffusion,用Ebsynth utility在视频选帧图重绘,第一步报错,蒙版和帧图没法生成,怎么处理啊
- ¥15 请把下列每一行代码完整地读懂并注释出来
- ¥15 寻找公式识别开发,自动识别整页文档、图像公式的软件