首页 > 编程语言 > C#/.net面试知识点总结(三)【值类型与引用类型】

C#/.net面试知识点总结(三)【值类型与引用类型】

时间:2023-02-16 14:01:47浏览次数:31  
标签:知识点 存储 C# 引用 类型 net 分配 内存

C#中什么是值类型与引用类型?

值类型:struct、enum、int、float、char、bool、decimal

引用类型:class、delegate、interface、array、object、string

C#中堆和栈的区别?

栈:由编译器自动分配、释放。在函数体中定义的变量通常在栈上。

堆:一般由程序员分配释放。用new、malloc等分配内存函数分配得到的就是在堆上。

栈:是一片连续的内存域,存放在栈中时要管存储顺序,先进后出的原则,有系统自动分配和维护;

堆:是无序的,他是一片不连续的内存域,有用户自己来控制和释放,如果用户自己不释放的话,当内存达到一定的特定值时,通过垃圾回收器(GC)来回收。

1)值类型:值类型总是分配在它声明的地方,作为局部变量时,存储在栈上;作为类对象的字段时,则跟随此对象存储在堆中。

2)引用类型:引用类型存储在堆中。类型实例化的时候,会在堆中开辟一部分空间存储类的实例。类对象的引用(地址)还是存储在栈中。

C#中什么是装箱和拆箱?

装箱:把值类型转换成引用类型

拆箱:把引用类型转换成值类型

标签:知识点,存储,C#,引用,类型,net,分配,内存
From: https://www.cnblogs.com/aikeming/p/17126427.html

相关文章

  • C#/.net面试知识点总结(三)【委托】
    委托是什么?事件是不是一种委托?委托可以把一个方法作为参数带入另一个方法。委托可以理解为指向一个函数的指针。C#的委托是CTS(公共类型系统)规定的5种类型之一。(类类型......
  • 10 张图解 K8S CNI Calico 网络模型原理与功能实战
    作者:liugp原文:https://u.kubeinfo.cn/4tRBTb一、概述Calico 是一个联网和网络策略供应商。Calico支持一套灵活的网络选项,因此你可以根据自己的情况选择最有效的选......
  • C#.NET上传大文件的三种解决方案
    ​ 以ASP.NETCoreWebAPI 作后端 API ,用 Vue 构建前端页面,用 Axios 从前端访问后端 API,包括文件的上传和下载。 准备文件上传的API #region 文件上传......
  • oracle的ASM扩容
    oracle的ASM扩容#查看服务器上总共有多少个asmdisk[grid@rkdb1]$asmcmdlsdsk--discoveryPath/dev/oracleasm/disks/OCPDATA1/dev/oracleasm/disks/OCPDATA2#......
  • 自己封装vue echart组件 方便调用
    <template><div><divref="lineChart":style="{width:width,height:height}"></div></div></template><script>importechartsfrom'echar......
  • 【LeetCode】15. 三数之和
    classSolution{public:vector<vector<int>>threeSum(vector<int>&nums){vector<vector<int>>result;sort(nums.begin(),nums.end());......
  • C# 字符串数组去重(去除数组中重复元素)
    1、去重distinct()或者GroupBy(p=>p).Select(p=>p.Key),去重的对象都需要为数组,具体看代码stringitemfileids="1,3,3,5,4,6,8,4,7,5,1,2";string[]sArray=itemf......
  • linux系统(centos7)安装gcc命令包(解压缩版)
    linux系统(centos7)安装gcc命令包(解压缩版)一、如果执行gcc–version出现以下信息,表示已经安装过gcc,可以跳过该步骤:[boco@CDH-143spark_job_monitor]$gcc--versiongcc......
  • .Net6 + GraphQL + MongoDb 实现Subscription监听功能
    介绍查询、添加、修改我们已经演示了,我们来看下订阅。订阅大家可以理解为音乐软件,我们用户=>订阅音乐频道<=服务发送新的音乐通知到频道。有新的通知进入频道后,频......
  • JavaScript体验
    JavaScript体验(来自本站javascript教程)JavaScript实例代码:JavaScript可以直接在HTML输出:document.write("<p>这是一个段落。</p>");JavaScript事件响应:<bu......