zoukankan      html  css  js  c++  java
  • 计算机内存的组织方式

      计算机使用内存来容纳要执行的程序以及这些程序使用的数据。

      操作系统和“运行时”通常将用于容纳数据的内存划分为两个独立的区域,每个区域都一不同的方式管理,这两个区域通常称为栈和堆。栈和堆的设计目标完全不同。

      调用方法时,它的参数和局部变量所需的内存总是从栈中获取。方法结束后,要不正常返回,要不就抛出异常,所以为参数和局部变量分配的内存将自动归还给栈,并可在另一个方法调用时重新使用。栈上的方法参数和局部变量都具有良好的定义的生存期,方法开始时进入生存期,方法结束时结束生存期。

      使用new关键字创建对象时,构造对象所需要的内存总是从堆中获取,使用引用变量,可以从多个地方引用同一个对象。使用new关键字将创建对象,但只有在删除了最后一个对象应用之后的某个不确定时刻,它才会消失。

      栈(stack)内存就像一系列堆得越来越高的箱子,调用方法时,它的每个参数都是被放入一个箱子,并将这个箱子放到栈的顶部。每个局部变量也同样分配到一个箱子,并同样放到栈顶。

      堆(heap)内存则像散布在房间里的一大堆箱子。

  • 相关阅读:
    VS头部自动注释
    JSONP跨域实现
    Chosen:Select 选择框的华丽变身
    Android NFC 整理
    Android Activity生命周期(转)
    eclipse svn 相关
    初学Java web(转)
    Java 定时任务(转)
    声音
    (转)关于分布式事务、两阶段提交、一阶段提交、Best Efforts 1PC模式和事务补偿机制的研究
  • 原文地址:https://www.cnblogs.com/hjxzjp/p/7892698.html
Copyright © 2011-2022 走看看