type
status
date
slug
summary
tags
category
icon
password
Property
Jul 15, 2023 11:35 AM

本节类容

什么是类型(Type)
类型在C#语言中的作用
C#语言的类型系统
变量、对象与内存
上部分内容见: 

C#语言的类型系统

C#的五大数据类型
  • 类(Class)如;Windows,Form,Console,String
  • 结构体(Structures)如Int32,Int64,Single,Double
  • 枚举(Enumerations)如Visibility,HorizontalAlignment
  • 接口(Interfaces)
  • 委托(Delegates)
C#类型的派生谱系
notion image
notion image

类类型class

notion image
notion image
结构体类型struct
notion image

变量、对象与内存

什么是变量
变量=以变量名所对应的内存地址为起点,以其数据类型所要求的存储空间为长度的一块内存区域。
  • 表面上来看(从C#代码的上下文行文上看),变量的用途是存储数据
  • 实际上,变量表示了存储位置,并且每个变量都有一个类型,以决定什么样的值能够存入变量
    • 变量名表示(对应着)变量的值在内存中的存储位置
  • 变量一共有7种
    • 静态变量、实例变量(成员变量、字段)、数组元素、值参数、引用参数、输出形参、局部变量
  • 狭义的变量指的是局部变量,因为其他种类的变量都有自己的约定名称
    • 简单地讲,局部变量就是方法体(函数体)里声明的变量
  • 变量的声明
    • 有效的修饰符组合opt类型 变量名 初始化器opt
值类型的变量
  • 以byte/sbyte/short/ushort为例
  • 值类型没有实例,所谓的“实例”与变量合二为一
引用类型的变量与实例
  • 引用类型变量与实例的关系:引用类型变量例存储的数据是对象的内存地址
局部变量是在Stack上分配内存
变量的默认值
常量(值不可改变的变量)
装箱与拆箱(Boxing & Unboxing)

变量

值类型

负数的储存是按位取反再加一
notion image
高高低低原则:高八位对应高八位,低八位对应低八位。对于有符号的,最高位是符号位
超出一字节的数,比如2字节ushort,存储的时候拆分两个部分,高位在高的内存地址,低位在地的内存地址
notion image

引用类型

notion image

默认值

变量的默认值是内存块全部为0所对应的值

常量

装箱与拆箱

会有性能损失
装箱:值类型的值,封装为object类型的值,放在堆上
拆箱:堆上的object类型的值,按照要求拆为目标类型,放在Stack上
notion image

学习视频

青城山小游C#知识学习—05 方法的定义、调用与调试(上)
  • Waline
Kitety
Kitety
独特为佳
公告
我曾经七次鄙视自己的灵魂
--卡里·纪伯伦
第一次,当它本可进取时,却故作谦卑;
第二次,当它在空虚时,用爱欲来填充;
第三次,在困难和容易之间,它选择了容易;
第四次,它犯了错,却借由别人也会犯错来宽慰自己;
第五次,它自由软弱,却把它认为是生命的坚韧;
第六次,当它鄙夷一张丑恶的嘴脸时,却不知那正是自己面具中的一副;
第七次,它侧身于生活的污泥中,虽不甘心,却又畏首畏尾。
 
最新评论
Loading...