值类型和引用类型,装箱和拆箱

c#中任何类型都是隐式继承自 System.object(引用类型)。

分为两大类,值类型和引用类型。

值类型包括:简单类型(int,float,double等),结构体,枚举

引用类型包括:自定义的类,字符串,接口,数组

区别:1. 值类型存储在栈中,自动释放,比较高效;引用类型存储在堆中,需要手动释放;

   2. 值类型不能派生,也就是不支持多态;引用类型反之;

      3. 值类型适合做数据载体;引用类型适合定义行为;

值类型转换为引用类型,叫装箱,反之叫拆箱,装箱拆箱需要消耗很多资源,非必要不建议这么做。

posted @ 2022-02-22 20:07  luytest  阅读(36)  评论(0编辑  收藏  举报