栈和堆的基本理解

栈:储存的基本数据类型的值,或者是内存地址

堆 :储存的是复杂数据类型,也就是所谓的引用数据类型。

        当引用数据类型在堆中存储的时候,会生成一个地址保存在栈上

简单粗暴来说,就是只要有new 就是在堆中储存数据,只要有var 就是在栈中开辟了一块空间

 

 

所以:在栈中存在的是简单数据类型的数值     or     复杂数值类型的内存地址   

结果:基本数据类型通过  = 进行复制的话,复制的值是和原来的值是两个值

           但是复杂的数据类型通过  =  复制的时候  复制的都是一个指针,指向

           的同一个对象,所以修改的时候是修改的同一个对象值,不能完成真正

           意义的复制,如果对对象进行复制的话,需要进行遍历操作

            

posted on 2019-07-02 00:08  长出了耳朵的小茉莉  阅读(241)  评论(0编辑  收藏  举报

导航