background image

关于.NET 20 个小题目(有答案:))

--------------------------------------------------------------------------------

1.面向对象的思想主要包括什么?

答:封装.继承,多态....

2.什么是 ASP.net 中的用户控件

答:用户控件就是.ascx 扩展名的东西喽,可以拖到不同的页面中调用,以节省代码.比如登陆可能在多个页
面上有,就可以做成用户控件,但是有一个问题就是用户控件拖到不同级别的目录下后里面的图片等的相
对路径会变得不准确,需要自已写方法调整.

3.什么叫应用程序域?什么是受管制的代码?什么是强类型系统?什么是装箱和拆箱?什么是重载?

CTS、CLS 和 CLR 分别作何解释?

答:装箱就是把值类型转成引用类型,从 MS IL 角度看好像是 boxing,没记错的话是把值从堆栈转到堆中.拆
箱相反,重载就是指一个方法名同,参数个数不同,返回值可以相同的方法.CLR 是通用语言运行时,其它的
不清楚.

4.列举一下你所了解的 XML 技术及其应用

答:XML,保存配置,站与站之间的交流,WEB SERVICE 都要用它.

5.值类型和引用类型的区别?写出 C#的样例代码。

答:结构是值类型,类是引用类型,所以传结构就是值类型的应用啦,传对象或类就是引用类型的,这个不用
多写了吧.

6.ADO.net 中常用的对象有哪些?分别描述一下。

答:connection command sqladapter dataset datatable dataview 等等.写不完了.

7.如何理解委托?

答:据说相当于函数指针,定义了委托就可以在不调用原方法名称的情况下调用那个方法.

msdn2005 中是这样解释的:

委托具有以下特点:

 

委托类似于 C++ 函数指针,但它是类型安全的。
委托允许将方法作为参数进行传递。
委托可用于定义回调方法。
委托可以链接在一起;例如,可以对一个事件调用多个方法。
方法不需要与委托签名精确匹配。有关更多信息,请参见协变和逆变。

C# 2.0 版引入了匿名方法的概念,此类方法允许将代码块作为参数传递,以代替单独定义的方法。

8.C#中的接口和类有什么异同。

答:接口里面不能有方法实现.......类里面显然有方法实现.....

1