c#面试题2023

进程和线程的区别?

答:进程是操作系统分配资源的基本单位,线程是CPU中的最小单位

winform窗口怎么传递值?

答:form2 f=new form2(string a)直接传递值

定义一个公共方法,get,set一下返回值,第二个窗口取调用这个方法,把值copy过去,第一窗口就可以调用返回的值

什么情况下会使用到linq?

linq可以对XML文件进行查询。

LINQ to XML 是 LINQ 技术的一部分,专门用于处理 XML 数据。它提供了一种统一的语法,使您可以在 C# 代码中编写查询,对 XML 数据进行各种操作,如查找、过滤、修改等。通过 LINQ to XML,您可以以更加直观和灵活的方式处理 XML 数据,而不需要手动解析 XML。

使用多线程的几种方法?

1、继承Thread类,重写run方法来实现多线程

2、继承Runnable接口实现多线程,实现Runnable接口相比继承Thread类来说,具有两大优势:避免单继承带来的局限和可以共享资源等优势

3、通过Callable 和 FutureTask创建线程

4、通过线程池实现多线程

线程池操作方法

创建线池:

ThreadPool.SetMinThreads();设置最小线程数

ThreadPool.SetManThreads();设置最小线程数

提交任务:

ThreadPool.QueuUserWorkItem(方法,参数);

 

SQL如何优化查询语句

1、尽量避免使用子查询
2、用IN来替换OR
3、尽量不要使用模糊查询
4、禁止不必要的Order By排序
5、不要用* 语句,尽量用字段
6、优化Group By语句
7、优化连表查询

SQL索引失效的原因有哪些

1、不等于(!= 或者<>)导致索引失效

2、is not null无法使用索引

3、模糊查询可能也会导致索引失效

4、OR 前后只要存在非索引的列,都会导致索引失效 

抽象类和接口的相同点和不同区别

相同点:

1、不能实例化;

2、包含未实现的方法声明

3、派生类必须实现未实现的方法,抽象类是抽象方法,接口则是所有成员(不仅是方法包括其他成员

不同点:

1、接口可以多继承,抽象类不能实现多继承。

2、接口只能定义抽象规则,抽象类既能定义抽象规则也能提供已实现的成员。

3、接口支持回调,抽象类不能实现回调,因为继承不支持。

4、接口不能定义字段和包含实现的方法,抽象类可以定义字段、包含有实现的方法。

5、接口可以作用于值类型和引用类型,抽象类只能作用于引用类型(例如:Struct只能继承接口)。

6、接口多定义对象的行为,抽象类多定义对象的属性。

C#中什么是反射?

反射就是管理程序集,模块,类型的对象,它能够动态的创建类型的实例,设置现有对象的类型或者获取现有对象的类型,能调用类型的方法和访问类型的字段属性。反射最大的好处是在运行时创建和使用类型实例。

 

 

 

 

 

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值