您的位置:首页技术文章
文章详情页

java - Android中静态变量被回收后值会变成什么?

【字号: 日期:2023-11-20 15:41:51浏览:33作者:猪猪

问题描述

比如

public static String APP_NAME = 'segmentFault';

当APP_NAME被回收后,APP_NAME的值会变成null,还是不确定的乱七八糟的值?

问题解答

回答1:

你对内存回收的理解有问题,对象回收首先是不再引用某块内存地址,GC把该块内存回收,而不是先把这块儿内存回收导致变量为null

回答2:

静态成员是不会被回收的。楼主不用担心静态成员的值会莫名其妙的变化。如果代码中没有对 APP_NAME 进行另外的赋值,那么它的值永远都是 'segmentFault'。

标签: java
相关文章: