NET 高频面试题及详细真实答案(实战版).docxVIP

  • 1
  • 0
  • 约5.16千字
  • 约 8页
  • 2026-08-24 发布于河北
  • 举报

NET 高频面试题及详细真实答案(实战版).docx

.NET高频面试题及详细真实答案(实战版)

一、C#基础语法与核心特性

1、值类型和引用类型的区别?日常开发常见类型有哪些?

参考答案:

两者核心区别是内存存储位置、赋值方式、生命周期完全不同。

值类型:数据直接存储在栈内存,赋值是完整拷贝,两个变量互不影响,出作用域立刻释放内存。

常见:int、double、bool、struct、enum、decimal。

引用类型:栈中只存内存地址,真实数据存在堆内存,赋值是地址拷贝,多个变量指向同一个堆对象,改一个全会变,由GC回收内存。

常见:string、class、数组、集合(List、Dictionary)、自定义类。

面试加分点:string是特殊引用类型,具备不可变性,每次赋值本质是新建对象。

2、string、StringBuilder、StringBuffer的区别?项目中怎么选用?

参考答案:

1、string:不可变字符串,每次拼接、修改都会生成新对象,频繁操作会产生大量垃圾内存,性能差。适合少量固定字符串场景。

2、StringBuilder:.NET专属,可变字符串,预分配缓冲区,拼接不新建对象,性能极高。适合循环拼接、大量字符串组装(日志、报文、导出文本)。

3、StringBuffer:Java专属,.NET没有,面试常被对比,不用混淆。

实战总结:单次赋值用string,循环/批量拼接必用S

文档评论(0)

1亿VIP精品文档

相关文档