流浪のwolf

卷帝

导航

值类型和引用类型的区别

值类型 --- 简单类型 基本类型  比如 数字,字符串 布尔 等 

引用类型  - 复杂类型 对象类型 比如 对象 函数 委托 等

 

区别:

1. 内存层面:值类型内存的分配和释放有编辑器管理,引用类型内存的分配和释放由垃圾回收期(GC)管理

2. 存储位层面:

  存储位置:值类型存储栈内存,只有数据 ;引用类型存储堆内存,地址和数据;

     赋值方式:值类型直接拷贝副本数据,操作另一个值不会影响另一个值;引用类型,赋值的是地址(指针)修改地址会影响另一个值;(深拷贝和浅拷贝);

3. 用途层面:值类型常用于存储数据 比如属性,引用类型描述行为 比如 类,方法;

4. 多态层面:值类型不支持多态,引用类型支持多态、

 

对象多态的实现依靠3个:接口 interface,抽象方法abstrac,虚方法 virual

 

posted on 2024-05-04 11:20  流浪のwolf  阅读(3)  评论(0编辑  收藏  举报