值和引用类型

//值类型

    //无符号:byte,ushort,uint,ulong
    //有符号: sbyte,short,int,long
    //浮点数: float,double,decimal
    //特殊:   char,bool
    //枚举:enum
    //结构体:struct

//引用类型

  //string
  //数组
  //class
  //interface
  //委托

//值类型和引用类型的本质区别

 //值的具体内容存在栈内存上
 //引用的具体内容存在堆内存上

//语句块
//命名空间
//
//类、接口、结构体
//
//函数、属性、索引器、运算符重载等(类、接口、结构体)
//
//条件分支、循环

//上层语句块:类、结构体
//中层语句块:函数
//底层的语句块:条件分支 循环等

//我们的逻辑代码写在哪里

 //函数、条件分支、循环-中层语句块中

//我们的变量可以申明在哪里

  //上、中、底都能申明变量
  //上层语句块中:成员变量
  //中、底层语句块中:临时变量

//变量的生命周期

 //编程时大部分都是 临时变量
 //在中底层申明的临时变量 (函数、条件分支、循环语句块等)
 //语句块执行结束
 //没有被记录的对象将被回收或变成垃圾
 //值类型:被系统自动回收
 //引用类型:栈上用于存地址的房间被系统自动回收,堆中具体内容变成垃圾,待下次GC回收

 //想要不被回收或者不变垃圾
 //必须将其记录下来
 //如何记录
 //在更高层级记录或者使用静态全局性变量记录


//类中的值和引用

   //类本身是引用类型
   //在类中的值,堆中存储具体的值
   //在类中的引用,堆中存储具体的值
   //值类型跟着大哥走,引用类型一根筋

//数组中的存储规则

   //数组本身是引用类型
   //值类型数组,堆中房间存具体内容
   //引用类型数组,堆中房间存地址
posted @ 2023-01-11 16:20  libaisheng9723  阅读(32)  评论(0)    收藏  举报