下图中可以分析出
1、a变量和arr都是在栈中开辟内存空间
2、a变量和arr去引用堆中开辟的字符串和数组
3、数组中存储的不是值,而是内存地址;也就是说数组中的a也引用了堆中开辟的那块内存空间
4、当a从新赋值的时候,a的引用变成了hehe的那块内存空间;ABC的那块空间被数组中元素引用着
下图就是印证了上图的说法
1、aArr bArr cArr都在堆中开辟内存空间,当cArr存储aArr和bArr的两个内存空间地址
2、当改变aArr的话 cArr中内存空间地址是不会改变的,所以改变aArr的话 cArr还是引用aArr地址,所以cArr也跟着变
网友评论