【C#基础 /.net core 高频面试题】

目录

C#基础

C#和.NET之间的关系是什么?

C#中的值类型和引用类型有哪些

值类型和引用类型有什么区别

说一说面向对象的三大基本特征和作用

在C#中委托的作用是什么?

委托和lambda表达式有什么关系?

在C#中Action类和Func类有什么作用二者有什么区别

LINQ是什么?

Task类是什么

泛型是什么,有什么作用

.net core

asp.net core跟asp.net有什么区别

ioc生命周期

如何读取静态文件

如何添加全局请求日志

鉴权技术

ORM框架

如何理解.net core 中的管道模型


前言

前阵子人事安排了好几个人过来技术面,每次都要花费不少时间结合面试者简历筛选面试题,
特此博主花了点时间整理了.net C# 比较基础且重要的技术栈面试题。非常适合应届毕业生
或者想转行.net的同学,想拿高薪的行业大牛可以直接跳过。

ps:以下部分问题的回答可能相对概述,是结合我公司实际想考察的重点来写的,如果觉得
不够详细可以自行百度。

C#基础

C#和.NET之间的关系是什么?

可以理解为包含的关系,C#是.net平台中的一种编程语言,还有F#,VB

C#中的值类型和引用类型有哪些

值类型:int short long bool char double float struct

引用类型:string(存放在常量池) class(类) interface(接口) delegate(委托)

值类型和引用类型有什么区别

值类型的赋值和操作是基于值的,每个变量都是独立的,修改一个变量不会影响其他变量。

引用类型对象的存储指向内存地址,多个变量可以引用同一个对象,修改一个变量可能会影响其他变量

说一说面向对象的三大基本特征和作用

封装:C#支持将数据和方法封装在类中,通过访问修饰符(如public、private、protected)控制对类的成员的访问权限,实现数据的隐藏和保护。

继承:C#支持类的继承,一个类可以派生自另一个类,并继承其属性和方法。继承允许代码重用和层次化的组织。

多态:通过基类引用指向派生类的对象,可以实现基于对象的实际类型进行方法调用,提供灵活性和可扩展性。

实例:审批流项目中有会签、或签两种签核方式 这两种方式都实现了验证接口(批准/驳回)

根据实际业务场景创建签核方式对象 类型声明为 验证接口类型

在C#中委托的作用是什么?

委托是一种类型,它可以用于存储对一个或多个方法的引用。

委托允许将方法作为参数传递给其他方法,从而实现回调函数的功能

委托和lambda表达式有什么关系?

C#2.0只有委托

C#3.0开始引入Lambda表达式,是匿名函数,可以对委托进行简写,微软针对委托提供的语法糖

lambda在ORM框架中大量使用

在C#中Action类和Func类有什么作用二者有什么区别

作用:C#内置委托,简化对委托的定义

区别:Action无返回值 void,Fuc有返回值

LINQ是什么?

C#内置查询语言,供了一种统一的查询语法和编程模型,用于从各种数据源(如集合、数据库、XML等)中进行数据查询和操作

Task类是什么

Task是C#对多线程操作的封装

现在有A B C三个异步方法,在同步的情况下 A执行3S,B 2S,C 5S

A(),B(),C()顺序执行需要几秒 答:瞬时

A(),await B(),C() 答:2S

await A(),await B(),awiat C() 答:10S

泛型是什么,有什么作用

可以在不同类型上工作的可重用代码。通过泛型,我们可以定义类、结构、接口和方法,使其具有参数化类型,以便在使用时指定具体的类型。

作用:

类型安全性:泛型在编译时进行类型检查,可以在编译时捕获类型错误,避免在运行时出现类型转换错误或运行时异常。

代码重用:通过泛型,可以编写可重用的代码,而不需要为每种类型编写重复的代码。这样可以提高代码的可维护性和可扩展性。

.net core

asp.net core跟asp.net有什么区别

跨平台,它可以运行在三大操作系统上面,windows, Linux和MAC

.net core是模块化框架、asp.net 相当于全家桶,把所有东西都放进来了不管用不用

ioc生命周期

transient

scoped

singleton

如何读取静态文件

可以通过中间件UseStaticFiles来配置读取静态文件

如何添加全局请求日志

通过AOP的方式实现ActionFilter接口

鉴权技术

OAuth

JWT

Session、Cookie

ORM框架

如何理解.net core 中的管道模型

请求管道描述的是一个请求进到后端应用,后端应用如何处理的过程,从接收到请求,之后请求怎么流转,经过哪些处理,最后怎么返回响应。请求管道就是一次请求在后端应用的生命周期。

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值