当前位置: 移动技术网 > IT编程>移动开发>Android > android内存管理

android内存管理

2018年03月29日  | 移动技术网IT编程  | 我要评论

onemaya,成仙速成班,古文观止朗读

android 内存优化是作为一个android开发人员必须要掌握的知识之一,它能够让我们的app更加的流程增加用户的体验感。

java内存分配策略:

1.静态存储区(方法区):主要存放静态数据、全局static数据和常亮。这块内存在程序编译时就已经分配好,并且在整个程序运行间都存在。

2.栈区:方法执行时被执行,方法体内的局部变量都在栈上创建,并在方法执行结束时这些局部变量所持有的内存将被自动释放。因为栈内存分配运算内置于处理器指令集中,效率很高,但是分配的内存是有限的。

3.堆区:又称为动态分配区,通常是值在程序运行时直接new出来的对象。这部分内存在不使用的时候将由java垃圾回收期来负责回收(new 出来的对象以及该对象中的所有成员变量都在堆内存中)。

tips:堆与栈的区别

栈中的变量生命周期随着方法的结束而结束,系统自动回收

堆内存由GC负责回收

举个例子:

public class Demo {
    private final String TAG = Demo.class.getSimpleName();//常量, 方法区
    private static int m = 0;//静态变量, 方法区
    private int n = 1;//成员变量, 堆区

    private void learn(){
        int k = 2;//局部变量, 栈区
        Demo demo = new Demo();// demo局部变量, 栈区; Demo实例,堆区
    }
}

// todo 垃圾回收机制

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网