值类型与引用类型区别

Posted yuanch2019

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了值类型与引用类型区别相关的知识,希望对你有一定的参考价值。

                                                                                                                                                    
 

值类型

引用类型

存储方式

直接存储数据本身

存储的是数据的引用,数据存储在数据堆中

内存分配

分配在栈中的

分配在堆中

效率

效率高,不需要地址转换

效率较低,需要进行地址转换

内存回收

使用完后立即回收

使用完后不立即回收,而是交给GC处理回收

赋值操作

创建一个新对象

创建一个引用

类型扩展

不易扩展,所有值类型都是密封(seal)的,所以无法派生出新的值类型

具有多态的特性方便扩展

实例分配

通常是在线程上分配的(静态分配),但是在某些情形下可以存储在堆中

总是在进程中分配(动态分配

 

原文链接:http://www.cnblogs.com/zengming/p/6037048.html

以上是关于值类型与引用类型区别的主要内容,如果未能解决你的问题,请参考以下文章

值类型和引用类型的区别

值类型与引用类型的区别

引用类型变量,对象,值类型,值传递,引用传递 区别与定义

引用类型与值类型在编码上的区别

基本数据类型和引用数据类型的区别是啥

值类型与引用类型的区别