值类型和引用类型的定义及区别

一.值类型、引用类型的定义

值类型:直接访问数据的值。

引用类型:访问数据的存储地址。

二.值类型与引用类型

值类型类似于数组

引用类型类似于链表

三.值类型与引用类型主的主要类型

值类型:基本数据类型(int、float、double等)、结构数据类型、枚举数据类型。

引用类型:类、接口、数组、字符串和委托。

四.值类型与引用类型的不同点

1.内存分配不同:值类型通常被分配到栈上,它的变量直接包含变量的实例,使用效率比较高。

引用类型分配在堆上,它的变量通常会包含一个指向实例的指针,变量通过该指针来引用实例。

2.默认值不同:值类型默认情况下自动初始化为0。引用类型默认情况下为null。

3.继承类不同:值类型继承自System.ValueType。引用类型继承自System.Object。

4.回收方法:值类型不由GC控制,作用域结束时自行释放。引用类型由GC完成。

5.继承性不同:值类型是密封的,因此不能用作基类。引用类型一般有继承性

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值