博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C#面试题
阅读量:5291 次
发布时间:2019-06-14

本文共 1649 字,大约阅读时间需要 5 分钟。

1. C#中的委托是什么?事件是不是一种委托?

委托可以把一个方法作为参数代入另一个方法,委托可以理解为指向一个函数的引用。
是,是一种特殊的委托

 

2. override与重载的区别

        重载是方法的名称相同。参数或参数类型不同,进行多次重载以适应不同的需要

        override 是进行基类中函数的重写。为了适应需要。

 

3. 实现冒泡算法

int [] array = new int [3] ;int temp = 0 ;for (int i = 0 ; i < array.Length - 1 ; i++){    for (int j = i + 1 ; j < array.Length ; j++)    {        if (array[j] < array[i])        {            temp = array[i] ;            array[i] = array[j] ;            array[j] = temp ;        }    }}

 

4.描述一下C#中索引器的实现过程,是否只能根据数字进行索引?

          可以用任意类型。

 

5.什么叫应用程序域?

           Net的运行环境,CLR将程序分成一个或多个逻辑区域就叫应用程序域AppDomain。

 

6. CTS、CLS、CLR分别作何解释?

           CTS:通用类型系统。CLS:通用语言规范。CLR:公共语言运行库。

 

7. 什么是装箱和拆箱?

            从值类型接口转换到引用类型装箱。从引用类型转换到值类型拆箱。

 

8.什么是受管制的代码?

        unsafe:非托管代码。不经过CLR运行。

 

9.什么是强类型系统?

        RTTI:类型识别系统。

 

10.在.net中,配件的意思是?

        程序集。(中间语言,源数据,资源,装配清单)

 

11.  根据线程安全的相关知识,分析以下代码,当调用test方法时i>10时是否会引起死锁?并简要说明理由。

public void test(int i){      lock (this)      {            if (i > 10)           {                    i--;                    test(i);            }       } }

不会发生死锁,(但有一点int是按值传递的,所以每次改变的都只是一个副本,因此不会出现死锁。但如果把int换做一个object,那么死锁会发生)

 

12.能用foreach遍历访问的对象需要实现______接口或声明_______方法的类型。

         答:IEnumerable 、 GetEnumerator。

 

13.GC是什么? 为什么要有GC?

         GC是垃圾收集器。程序员不用担心内存管理,因为垃圾收集器会自动进行管理。要请求垃圾收集,可以调用下面的方法之一:
         System.gc() , Runtime.getRuntime().gc()

 

14.abstract class和interface有什么区别?

         abstract类: 有一个抽象方法的类叫抽象类

         interface接口: 只能包含方法,委托,事件,属性,这些都是为实现(抽象的)

 

15. 接口是否可继承接口? 抽像类是否可实现(implements)接口? 抽像类是否可继承实体类(concrete class)?

         接口可以继承接口。抽像类可以实现(implements)接口,抽像类是否可继承实体类,但前提是实体类必须有明确的构造函数。

 

16. 构造器Constructor是否可被override?

      构造器Constructor不能被继承,因此不能重写Overriding,但可以被重载Overloading。

 

17. 是否可以继承String类?

      String类是final类故不可以继承。

转载于:https://www.cnblogs.com/plateFace/p/4674186.html

你可能感兴趣的文章
面试题2
查看>>
selenium+java iframe定位
查看>>
js基础
查看>>
P2P综述
查看>>
细读 php json数据和JavaScript json数据
查看>>
第五章 如何使用Burp Target
查看>>
Sprint阶段测试评分总结
查看>>
Servlet3.0新特性
查看>>
java内存溢出怎么解决
查看>>
JS对象以及"继承"
查看>>
Ewebeditor最新漏洞及漏洞大全
查看>>
socket计划编制的原则
查看>>
sqlite3经常使用命令&amp;语法
查看>>
[leetcode] 309. Best Time to Buy and Sell Stock with Cooldown(medium)
查看>>
解决微信授权回调页面域名只能设置一个的问题 [php]
查看>>
数组去重一步到位
查看>>
HDU 4671 Backup Plan 构造
查看>>
linux下编译openjdk8
查看>>
【python】--迭代器生成器装饰器
查看>>
Pow(x, n)
查看>>