.net 面试题与测试题(附答案)

1 (1) 面向对象的语言具有 __ 继承性 _ 性、 _ 封装性 _ 性、 _ 多态性 性。

 

(2) 能用 foreach 遍历访问的对象需要实现 _ IEnumerable_ 接口或声明 _ GetEnumerator_ 方法的类型。

 

(3).c# 中的三元运算符是 __ ?: __
2.
当整数 a 赋值给一个 object 对象时,整数 a 将会被 __ 装箱 ___?
3.
类成员有 __ 3 __ 种可访问形式?
4.public static const int A=1;
这段代码有错误么?是什么? const 成员都是 static 所以应该去掉 static
5.float f= -123.567F;
int i=(int)f;
i
的值现在是 _ -123 ____?
6.
利用 operator 声明且仅声明了 == ,有什么错误么 要同时修改 Equale GetHash() ? 重载了 "==" 就必须重载 "!="
7. 委托声明的关键字是 ___ delegate ___?
8.
sealed 修饰的类有什么特点? 不可被继承
9. Asp.net 中所有的自定义用户控件都必须继承自 _ System.Web.UI.UserControl _______?
10.
.Net 中所有可序列化的类都被标记为 __ [serializable] ___?
11.
.Net 托管代码中我们不用担心内存漏洞,这是因为有了 _ gC __?
12.
下面的代码中有什么错误吗? _ abstract override 是不可以一起修饰 ______
using System;
class A
{
public virtual void F(){
Console.WriteLine("A.F");
}
}
abstract class B:A
{
public abstract override void F();
}

 

13. 当类 T 只声明了私有实例构造函数时,则在 T 的程序文本外部, _ 不可以 _ (可以 or 不可以)从 T 派生出新的类, _ 不可以 _ (可以 or 不可以)直接创建 T 的任何实例。
14.
下面这段代码有错误么? case(): 不行 default;
switch (i){
case():
CaseZero();
break;
case 1:
CaseOne();
break;
case 2:
dufault;
CaseTwo();
break;
}
15.
.Net 中,类 System.Web.UI.Page 可以被继承么? 可以

 

2. 不定项选择:

 

(1) 以下叙述正确的是: B C

 

A. 接口中可以有虚方法。 B. 一个类可以实现多个接口。  C. 接口不能被实例化。 D. 接口中可以包含已实现的方法。

 

   (2) 从数据库读取记录,你可能用到的方法有: B C D

 

      A. ExecuteNonQuery            B. ExecuteScalar      C. Fill                        D. ExecuteReader

 

2. 对于一个实现了 IDisposable 接口的类,以下哪些项可以执行与释放或重置非托管资源相关的应用程序定义的任务? ( 多选 )   (         ABC         )  
  A.Close B.Dispose C.Finalize  
  D.using E.Quit  
  3.
以下关于 ref out 的描述哪些项是正确的? ( 多选 )   (     ACD   )  
  A.
使用 ref 参数,传递到 ref 参数的参数必须最先初始化。  
  B.
使用 out 参数,传递到 out 参数的参数必须最先初始化。  
  C.
使用 ref 参数,必须将参数作为 ref 参数显式传递到方法。  
  D.
使用 out 参数,必须将参数作为 out 参数显式传递到方法。  

 

1. 在对 SQL Server 数据库操作时应选用( A )。

 

a)SQL Server .NET Framework 数据提供程序;

 

b)OLE DB .NET Framework 数据提供程序;

 

c)ODBC .NET Framework 数据提供程序;

 

d)Oracle .NET Framework 数据提供程序;

 

2.a)enum 类型    b)struct 类型  c)string 类型    d)int 类型

 

3. 关于 ASP.NET 中的代码隐藏文件的描述正确的是( C

 

a)Web 窗体页的程序的逻辑由代码组成,这些代码的创建用于与窗体交互。编程逻辑唯一与用户界面不同的文件中。该文件称作为 代码隐藏 文件,如果用 C #创建,该文件将具有 “.ascx.cs” 扩展名。

 

b) 项目中所有 Web 窗体页的代码隐藏文件都被编译成 .EXE 文件。

 

c) 项目中所有的 Web 窗体页的代码隐藏文件都被编译成项目动态链接库( .dll )文件。

 

d) 以上都不正确。

 

4. 以下描述错误的是( A

 

a) C++ 中支持抽象类而在 C# 中不支持抽象类。

 

b)C++ 中可在头文件中声明类的成员而在 CPP 文件中定义类的成员,在 C# 中没有头文件并且在同一处声明和定义类的成员。

 

c) C# 中可使用 new 修饰符显式隐藏从基类继承的成员。

 

d) C# 中要在派生类中重新定义基类的虚函数必须在前面加 Override

 

5.C# 的数据类型有( A

 

a) 值类型和调用类型; b) 值类型和引用类型; c) 引用类型和关系类型; d) 关系类型和调用类型;

 

6. 下列描述错误的是( D

 

a) 类不可以多重继承而接口可以;

 

b) 抽象类自身可以定义成员而接口不可以;

 

c) 抽象类和接口都不能被实例化;

 

d) 一个类可以有多个基类和多个基接口;

 

7. DOM 中,装载一个 XML 文档的方法( D

 

a)save 方法    b)load 方法  c)loadXML 方法  d)send 方法

 

8. 下列关于构造函数的描述正确的是( C

 

a) 构造函数可以声明返回类型。

 

b) 构造函数不可以用 private 修饰

 

c) 构造函数必须与类名相同

 

d) 构造函数不能带参数

 

9. 以下是一些 C# 中的枚举型的定义,其中错误的用法有()

 

a)public enum var1{ Mike = 100, Nike = 102, Jike }

 

b)public enum var1{ Mike = 100, Nike, Jike }

 

c)public enum var1{ Mike=-1 , Nike, Jike }

 

d)public enum var1{ Mike , Nike , Jike }

 

  • 10.int[][] myArray3=new int[3][]{new int[3]{5,6,2},new int[5]{6,9,7,8,3},new int[2]{3,2}}; myArray3[2][2] 的值是( D )。

     

a)9                   b)2             c)6              d) 越界

 

11. 接口是一种引用类型,在接口中可以声明( A ),但不可以声明公有的域或私有的成员变量。

 

a) 方法、属性、索引器和事件;  b) 方法、属性信息、属性;  c) 索引器和字段;     d) 事件和字段;

 

12.ASP.NET 框架中,服务器控件是为配合 Web 表单工作而专门设计的。服务器控件有两种类型,它们是 (A )

 

a)HTML 控件和 Web 控件  b)HTML 控件和 XML 控件  c)XML 控件和 Web 控件     d)HTML 控件和 IIS 控件

 

13.ASP.NET 中,在 Web 窗体页上注册一个用户控件,指定该控件的名称为 ”Mike” ,正确的注册指令为 ( D)

 

a)<%@Register TagPrefix = “Mike” TagName = “Space 2” Src = “myX.ascx”%>

 

b)<%@Register TagPrefix = “Space 2” TagName = “Mike” Src = “myX.ascx”%>

 

c)<%@Register TagPrefix = “SpaceX” TagName = “Space 2” Src = “Mike”%>

 

d) 以上皆非

 

14. ADO.NET 中,对于 Command 对象的 ExecuteNonQuery() 方法和 ExecuteReader() 方法,下面叙述错误的是( C )。

 

a)insert update delete 等操作的 Sql 语句主要用 ExecuteNonQuery() 方法来执行;

 

b)ExecuteNonQuery() 方法返回执行 Sql 语句所影响的行数。

 

c)Select 操作的 Sql 语句只能由 ExecuteReader() 方法来执行;

 

d)ExecuteReader() 方法返回一个 DataReder 对象;

 

15. 下列 ASP.NET 语句( b )正确地创建了一个与 SQL Server 2000 数据库的连接。

 

a)SqlConnection con1 = new Connection(“Data Source = localhost; Integrated Security = SSPI; Initial Catalog = myDB”);

 

b)SqlConnection con1 = new SqlConnection(“Data Source = localhost; Integrated Security = SSPI; Initial Catalog = myDB”);

 

c)SqlConnection con1 = new SqlConnection(Data Source = localhost; Integrated Security = SSPI; Initial Catalog = myDB);

 

d)SqlConnection con1 = new OleDbConnection(“Data Source = localhost; Integrated Security = SSPI; Initial Catalog = myDB”);

 

16.Winform 中,关于 ToolBar 控件的属性和事件的描述不正确的是 (D)

 

a)Buttons 属性表示 ToolBar 控件的所有工具栏按钮

 

b)ButtonSize 属性表示 ToolBar 控件上的工具栏按钮的大小,如高度和宽度

 

c)DropDownArrows 属性表明工具栏按钮(该按钮有一列值需要以下拉方式显示)旁边是否显示下箭头键