`

堆栈存值关系

 
阅读更多
http://www.cnblogs.com/iliuyuet/p/5603618.html
1,堆存引用;栈存值,可共享

2,int a=3
堆中创建一个a的引用;
栈中创建3的字面值;
a这个引用指向3这个值

3,String str = "abc"
(1)堆中创建一个str的引用;
(2)栈中查找有没有存放值为"abc"的地址,如果没有,则开辟一个存放字面值为"abc"的地址,接着创建一个新的String类的对象o,并 将o的字符串值指向这个地址,而且在栈中这个地址旁边记下这个引用的对象o。如果已经有了值为"abc"的地址,则查找对象o,并返回o的地址。
(3)将str指向对象o的地址。


4,String str1 = "abc"; String str2 = "abc";
分享到:
评论

相关推荐

    堆栈,后缀表达式

    这种特性使得堆栈非常适合处理具有顺序关系的问题,如括号匹配、函数调用等。 后缀表达式的概念源自于波兰数学家Jan Łukasiewicz的工作,他在20世纪20年代提出了一种无括号的表达式表示法。在后缀表达式中,运算符...

    (自考02325李学干版)计算机系统结构课后习题实用.pdf

    * 标志符数据表示与描述符数据表示的差别是标志符与每个数据相连,合存于同一存储单元,描述单个数据的类型特性;描述符是与数据分开存放,用于描述向量、数组等成块数据的特征。 * 描述符数据表示为向量、数组的...

    (自考02325李学干版)计算机系统结构课后习题.pdf

    数据结构则反映了各种数据元素或信息单元之间的结构关系。数据表示是数据结构的组成元素,不同的数据表示可以为数据结构的实现提供不同的支持。 在选择数据表示时,需要遵循以下原则:看系统的效率是否提高,是否...

    2022年自考02325计算机系统结构课后习题.doc

    标志符数据表达与描述符数据表达的差异是标志符与每个数据相连,合存于同一存储单元,描述单个数据的类型特性;描述符是与数据分开寄存,用于描述向量、数组等成块数据的特性。 描述符数据表达为向量、数组的实现...

    (自考02325李学干版)计算机系统结构课后习题.doc

    标志符数据表示与描述符数据表示的差别在于标志符与每个数据相连,合存于同一存储单元,描述单个数据的类型特性;描述符是与数据分开存放,用于描述向量、数组等成块数据的特征。 描述符数据表示为向量、数组的实现...

    [试题]c语言第3章试题.doc

    - 栈装载或指令(OR Stack):类似地,将栈顶两个值进行逻辑或操作,结果存回栈顶,同样不改变堆栈深度。 - 逻辑推入栈指令(Push Logical):将当前栈顶的值复制并推入栈中,增加栈的深度。 这些知识点都是PLC...

    汇编 第2章 数据定义与传送

    例如,将`AL`寄存器的值压入堆栈: ```assembly PUSH AL ``` 2.2.5 操作数表达式: 操作数可以是直接值、变量、寄存器或计算后的值。在例子中,`SUM`的值通过加法运算得到: ```assembly MOV AL, A ADD AL, X MOV ...

    单片机学习中几个不易掌握的概念

    堆栈是单片机内部RAM的一部分,其主要作用是暂存数据和返回地址。堆栈采用“先进后出”(FILO)的原则,即最后进入的数据最先被取出。堆栈的操作指令包括PUSH和POP,分别用于将数据压入堆栈和从堆栈中弹出数据。堆栈...

    汇编语言001

    - **出栈指令**(POP):将数据从堆栈顶部弹出,SP寄存器的值加2。 #### 五、存储器的分段管理 - **地址表示的一对矛盾**:直接寻址能力为1MB,但寄存器只有16位。 - **解决方法**:通过将内存划分为多个段,每个...

    51汇编111条指令解析大全(打印版)

    汇编语言是一种低级的编程语言,它与计算机的机器语言有直接的对应关系,但使用的是人类可读的符号和缩写。在单片机开发领域,熟练掌握汇编语言对于开发高效、精确的程序是非常重要的。8051单片机是经典的微控制器之...

    java算法非常详细的树,图,存储结构

    二叉搜索树(BST)是一种特殊的二叉树,其中每个节点的值都大于其左子树中所有节点的值,并且小于其右子树中所有节点的值。 2. **平衡二叉树**:例如AVL树,它是一种自平衡的二叉搜索树,任何节点的两个子树的高度...

    基于javaweb的小型超市信息管理(进销存)系统。开发工具为MyEclipse.zip

    集成调试器允许开发者逐行执行代码,设置断点、查看变量值、跟踪调用堆栈等,帮助定位并修复代码中的错误。 测试框架和工具则协助开发者编写和运行单元测试、集成测试及性能测试,确保软件质量。 版本控制与协作...

    单片机简答(期末复习资料最新).pdf

    编程题中提供的代码示例,描述了如何根据变量x的值来计算变量y,并将结果存回原单元。这里使用了条件转移指令来处理x与y之间的关系,以及移位操作来保留x的符号位。 在设计单片机应用时,工程师必须熟悉这些基础...

    计算机原理作业2_key.pdf

    5. 物理地址的计算是将段寄存器(CS)的值乘以16,然后加上指令指针寄存器(IP)的值,所以当CS=3A70H,IP=1400H时,物理地址为3A70H * 16 + 1400H = 3BB00H(选项A正确)。 6. 4字节信息135790ABH在存储器中按字节...

    单片机课后答案C语言.doc

    3. **堆栈**:堆栈是MCS-51单片机中一种特殊的内存管理机制,由软件动态管理,通常在片内数据存储器的特定区域开辟,用于暂存数据,如函数调用时的返回地址。 4. **程序存储器地址**:在8751单片机中,如果EA...

    2021-2022计算机二级等级考试试题及答案No.11045.docx

    这种布局常用于模拟翻页效果或者实现类似于堆栈的功能。 2. **正确答案**:**正确**。CardLayout布局管理器确实将界面视为一系列卡片,每次只显示一个。 ### VBA的逻辑值进行算术运算 1. **VBA逻辑值**:在VBA...

    单片机考试题库完整.doc

    - 上电复位时,SP(堆栈指针)不会初始化为00H,而是特定的初始值。 - 一个机器周期不一定是1.5us,具体取决于晶振频率。 - 当EA=1时,AT89C52的外部程序存储器扩展最大只能到64KB。 - 调用子程序指令和返回指令...

    华东理工大学可编程控制技术(新)作业及期末复习题.docx

    PLC的堆栈是一种暂存区,用于暂存PLC的中间结果。堆栈可以用于PLC的逻辑运算、算术运算等操作。 10. PLC的指针 PLC的指针是一种变量,用于指向PLC的寄存器或内存地址。指针可以用于PLC的逻辑运算、算术运算等操作...

    计算机组成原理实验报告册.pdf

    - E命令:逐字显示内存内容,并允许用户输入新值回存。 - D命令:显示一段内存区域的内容。 - T命令:单步执行指令,观察程序执行过程。 5. 寄存器限制: - R4寄存器:用于保存操作系统的栈顶指针,指示堆栈的...

Global site tag (gtag.js) - Google Analytics