栈尺寸有限,每个线程的栈都是分开的,那么假如他们要共享一个数据怎么办?
栈和方法调用密切相关,方法退出了,栈上的一段数据就废弃了,那么两个方法要共享一段数据怎么办?
所以就要有一快共享的内存区域来放数据嘛,这就出现了堆。
另外值类型没法继承,没法用接口来引用(虽然泛型+接口解决部分问题)。
1、值类型大对象拷贝成本太高,结果,要用指针。
2、值类型成员是包含关系,所以没法做循环引用和反向引用,又要引入指针。
引入了指针后,发现还是引用类型好用……