值类型的存储方式是直接存储数据本身,引用类型的存储方式是存储的是数据的引用,数据存储在数据堆中。
值类型的内存分配是分配在栈中的,引用类型是分配在堆中的。
值类型的效率高不需要数据转换,引用类型效率较低,需要进行地址转换。
值类型使用完后立即回收,引用类型使用完后不立即回收,而是交给GC处理回收。
值类型的赋值操作是创建一个新对象,引用类型是创建一个引用。
值类型不宜扩展,所有值类型都是密封的(seal)的,所以无法派生出新的值类型,引用类型具有多态的特性方便拓展。
值类型的实例分配通常是在线程栈上分配的(静态分配),但是在某些情形下可以存储在堆中。引用类型总是在进程堆中分配(动态分配)
值类型与引用类型的区别
最新推荐文章于 2022-09-10 17:44:37 发布