结论 其实两者本质上都是值传递。所谓的值和引用是相对于数据存储角度来论断的,值类型都是放置在栈空间的数据,引用类型则是放置在堆中首先,对于每一个程序而言,操作系统都会为他们开辟几段内存空间,这些内存空间分为几个部分,栈段,代码段,堆段对于栈段,程序中的值类型就存储在栈段中,而引用类型的数据则是存放在堆中,栈中存放的是该数据对象在堆中的内存地址所以当复制值类型的时候,两个变量就同时指向各自的值,各自改变也不会产生影响。当复制引用类型的时候,两个变量的存储都是同样的内存地址,当改变的时候,改变的是同一个数据对象。