当前位置:文档之家› net面试题大全(有答案)

net面试题大全(有答案)

net面试题大全(有答案)
net面试题大全(有答案)

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

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

1.c#中的三元运算符是__?:__

2.当整数a赋值给一个object对象时,整数a将会被__装箱___?

3.类成员有__3__种可访问形式?

4.public static const int A=1;这段代码有错误么?是什么?const成员都是stati c所以应该去掉static

5.float f=-123.567F;

int i=(int)f;

i的值现在是_-123____?

6.利用operator声明且仅声明了==,有什么错误么? 要同时修改Equale和GetHash() ? 重载了"==" 就必须重载"!="

7.委托声明的关键字是___ delegate ___?

8.用sealed修饰的类有什么特点?不可被继承

9.在https://www.doczj.com/doc/cf2232562.html,中所有的自定义用户控件都必须继承自_ https://www.doczj.com/doc/cf2232562.html,erControl _______?

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

务?(多选) ( ABC )

A.Close

B.Dispose

C.Finalize

https://www.doczj.com/doc/cf2232562.html,ing

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.下列选项中,(C)是引用类型。

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

3.关于https://www.doczj.com/doc/cf2232562.html,中的代码隐藏文件的描述正确的是(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#的数据类型有(B)[原文为D,有误]

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

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

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

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

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

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

7.在DOM中,装载一个XML文档的方法(B)[原文为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)越界

https://www.doczj.com/doc/cf2232562.html,框架中,服务器控件是为配合Web表单工作而专门设计的。服务器控件有两种类型,它们是(A )

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

https://www.doczj.com/doc/cf2232562.html,中,在Web窗体页上注册一个用户控件,指定该控件的名称为”Mike”,正确的注册指令为( D)

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

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

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

d)以上皆非

14.在https://www.doczj.com/doc/cf2232562.html,中,对于Command对象的ExecuteNonQuery()方法和ExecuteReader()方法,下面叙述错误的是(C)。

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

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

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

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

15.下列https://www.doczj.com/doc/cf2232562.html,语句(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属性表明工具栏按钮(该按钮有一列值需要以下拉方式显示)旁边是否显示下箭头键

d)ButtonClick事件在用户单击工具栏任何地方时都会触发

17.在https://www.doczj.com/doc/cf2232562.html,中执行一个存储过程时,如果要设置输出参数则必须同时设置参数的方向和(B ),必要时还要设置参数尺寸。

a)大小;b)上限;c)初始值;d)类型;

18.如果将窗体的FormBoderStyle设置为None,则( B)。

a)窗体没有边框并不能调整大小;b)窗体没有边框但能调整大小;

c)窗体有边框但不能调整大小;d)窗体是透明的;

19.如果要将窗体设置为透明的,则( B)

a)要将FormBoderStyle属性设置为None;b)要将Opacity属性设置为小于100%得值;

c)要将locked 属性设置为True;d)要将Enabled属性设置为True;

20.下列关于C#中索引器理解正确的是(B/C )

a)索引器的参数必须是两个或两个以上b)索引器的参数类型必须是整数型

c)索引器没有名字d)以上皆非

21.下面描述错误的是( C/D)。

a)窗体也是控件;b)窗体也是类;c)控件是从窗体继承来的;d)窗体的父类是控件类;

22.要对注册表进行操作则必须包含( D)。

a)https://www.doczj.com/doc/cf2232562.html,ponentModel命名空间;b)System.Collections命名空间;

c)System.Threading命名空间;d)Microsoft.Win32命名空间;

23.要创建多文档应用程序,需要将窗体的(D )属性设为true。

a)DrawGrid;b)ShowInTaskbar;c)Enabled;d)IsMdiContainer;

24.如果设treeV iew1=new TreeV iew(),则treeView1.Nodes.Add("根节点")返回的是一个()类型的值。

a)TreeNode;

b)int;

c)string;

d)TreeView;

b)XML 是一种简单、与平台无关并被广泛采用的标准;

c)XML文档可承载各种信息;

d)XML只是为了生成结构化文档;

1.装箱、拆箱操作发生在: ( C )

A.类与对象之间

B.对象与对象之间

C.引用类型与值类型之间

D.引用类型与引用类型之间

2.用户类若想支持Foreach语句需要实现的接口是: ( A)

A.IEnumerable

B.IEnumerator

C.ICollection

D.ICollectData

https://www.doczj.com/doc/cf2232562.html, Framework通过什么与COM组件进行交互操作?( C )

A.Side By Side

B.Web Service

C.Interop

D.PInvoke

https://www.doczj.com/doc/cf2232562.html,依靠以下哪一项技术解决COM存在的Dll Hell问题的?( A)

A.Side By Side

B.Interop

C.PInvoke

https://www.doczj.com/doc/cf2232562.html,+

5.装箱与拆箱操作是否是互逆的操作?( B )

A.是

B.否

6.以下哪个是可以变长的数组?( D )

A.Array

B.string[]

C.string[N]

D.ArrayList

7.用户自定义异常类需要从以下哪个类继承:( A)

A.Exception

B.CustomException

C.ApplicationException

D.BaseException

8.以下代码段中能否编译通过?请给出理由。

try

{

}

catch(FileNotFoundException e1)

{

}

catch(Exception e2)

{

}

catch(IOException e3)

{

}

catch

{

}

9.对于一个实现了IDisposable接口的类,以下哪些项可以执行与释放或重置非托管资源相关的应用程序定义的任务?(多选) ( ABC )

A.Close

B.Dispose

C.Finalize

https://www.doczj.com/doc/cf2232562.html,ing

E.Quit

https://www.doczj.com/doc/cf2232562.html,依赖以下哪项技术实现跨语言互用性?( C )

A.CLR

B.CTS

C.CLS

D.CTT

11.请问: String类与StringBuilder类有什么区别?为什么在.Net类库中要同时存在这2个类?(简答)

如果要操作一个不断增长的字符串,尽量不用String类,改用StringBuilder类。两个类的工作原理不同:String类是一种传统的修改字符串的方式,它确实可以完成把一个字符串添加到另一个字符串上的工作没错,但是在.NET框架

StringBuilder类就不是这样了,它提供的Append方法,能够在已有对象的原地进行字符串的修改,简单而且直接。当然,一般情况下觉察不到这二者效率的差异,但如果你要对某个字符串进行大量的添加操作,那么StringBuilder 类所耗费的时间和String类简直不是一个数量级的。

12.以下哪个类是int的基类?( )

A.Int32

B.Object

C.V alueType

D.Int16

二、C# 部分*

13.以下哪些可以作为接口成员?(多选) ( ABDE )

A.方法

B.属性

C.字段

D.事件

E.索引器

F.构造函数

G.析构函数

14.以下关于ref和out的描述哪些项是正确的?(多选) ( ACD )

A.使用ref参数,传递到ref参数的参数必须最先初始化。

B.使用out参数,传递到out参数的参数必须最先初始化。

C.使用ref参数,必须将参数作为ref参数显式传递到方法。

D.使用out参数,必须将参数作为out参数显式传递到方法。

15.“访问范围限定于此程序或那些由它所属的类派生的类型”是对以下哪个成员可访问性含义的正确描述?( B )

A.public

B.protected

C.internal

D.protected internal

16.class Class1

{

private static int count = 0;

static Class1()

{

count++;

}

public Class1()

{

count++;

}

}

Class1 o1 = new Class1();

Class1 o2 = new Class1();

请问,o1.Count的值是多少?( C )

A.1

B.2

C.3

D.4

17.abstract class BaseClass

{

public virtual void MethodA()

{

}

public virtual void MethodB()

{

}

}

class Class1: BaseClass

{

public void MethodA(string arg)

{

}

public override void MethodB()

{

class Class2: Class1

{

new public void MethodB()

{

}

}

class MainClass

{

public static void Main(string[] args)

{

Class2 o = new Class2();

Console.WriteLine(o.MethodA());

}

}

请问,o.MethodA调用的是: ( A)

A.BaseClass.MethodA

B.Class2.MethodA

C.Class1.MethodA

D.都不是

18.请叙述属性与索引器的区别。

属性索引器

通过名称标识。通过签名标识。

通过简单名称或成员访问来访问。通过元素访问来访问。

可以为静态成员或实例成员。必须为实例成员。

属性的get 访问器没有参数。索引器的get 访问器具有与索引器相同的形参表。

属性的set 访问器包含隐式value 参数。除了value 参数外,索引器的set 访问器还具有与索引器相同的形参表。

19.请叙述const与readonly的区别。

每一个class至多只可以定义一个static构造函数,并且不允许增加访问级别关键字,参数列必须为空。

为了不违背编码规则,通常把static数据成员声明为private,然后通过statci property提供读写访问。

const 关键字用于修改字段或局部变量的声明。它指定字段或局部变量的值不能被修改。常数声明引入给定类型的一个或多个常数。

const数据成员的声明式必须包含初值,且初值必须是一个常量表达式。因为它是在编译时就需要完全评估。

const成员可以使用另一个const成员来初始化,前提是两者之间没有循环依赖。

readonly在运行期评估赋值,使我们得以在确保“只读访问”的前提下,把object的初始化动作推迟到运行期进行。

readonly 关键字与const 关键字不同:const 字段只能在该字段的声明中初始化。readonly 字段可以在声明或构造函数中初始化。因此,根据所使用的构造函数,readonly 字段可能具有不同的值。另外,const 字段是编译时常数,而readonly 字段可用于运行时常数。

readonly 只能在声明时或者构造函数里面初始化,并且不能在static 修饰的构造函数里面。

21.您需要创建一个https://www.doczj.com/doc/cf2232562.html,应用程序,公司考虑使用Windows身份认证。

所有的用户都存在于AllWin这个域中。您想要使用下列认证规则来配置这个应用程序:

a、匿名用户不允许访问这个应用程序。

b、所有雇员除了Tess和King都允许访问这个应用程序。

请问您应该使用以下哪一个代码段来配置这个应用程序?( A)

A.

C.

D.

E.

22.您要创建一个显示公司员工列表的应用程序。您使用一个DataGrid控件显示员工的列表。您打算修改这个控件以便在这个Grid的Footer显示员工合计数。请问您应该怎么做?( C? )

A.重写OnPreRender事件,当Grid的Footer行被创建时显示合计数。

B.重写OnItemCreated事件,当Grid的Footer行被创建时显示合计数。

C.重写OnItemDataBound事件,当Grid的Footer行被创建时显示合计数。

D. 重写OnLayout事件,当Grid的Footer行被创建时显示合计数。

23.您要创建https://www.doczj.com/doc/cf2232562.html,应用程序用于运行AllWin公司内部的Web站点,这个应用程序包含了50个页面。您想要配置这个应用程序以便当发生一个HTTP代码错误时它可以显示一个自定义的错误页面给用户。您想要花最小的代价完成这些目标,您应该怎么做?(多选)( CD )

A.在这个应用程序的Global.asax文件中创建一个Application_Error过程去处理https://www.doczj.com/doc/cf2232562.html,代码错误。

B.在这个应用程序的Web.config文件中创建一个applicationError节去处理https://www.doczj.com/doc/cf2232562.html,代码错误。

C.在这个应用程序的Global.asax文件中创建一个CustomErrors事件去处理HTTP错误。

D.在这个应用程序的Web.config文件中创建一个CustomErrors节去处理HTTP错误。

E.在这个应用程序的每一页中添加一个Page指示符去处理https://www.doczj.com/doc/cf2232562.html, 代码错误。

F. 在这个应用程序的每一页中添加一个Page指示符去处理https://www.doczj.com/doc/cf2232562.html, HTTP错误。

24.您的公司有一个DB Server,名为AllWin,其上装了MS SQLSERVER 2000。现在需要您写一个数据库连接字符串,用以连接AllWin上SQL SERVER中的一个名为PubBase实例的Test库。请问,应该选择下面哪一个字符串?( B )

A. “Server=AllWin;Data Source=PubBase;Initial Catalog=Test;Integrated Security=SSPI”

B. “Server= AllWin;Data Source=PubBase;Database=Test;Integrated Security= SSPI”

C. “Data Source= AllWin \PubBase;Initial Category=PubBase;Integrated Securit y= SSPI”

D. “Data Source= AllWin \ PubBase;Database=Test;Integrated Security= SSPI”

25.您为AllWin公司创建了一个https://www.doczj.com/doc/cf2232562.html,应用程序。这个应用程序调用一个Xml Web Service。这个Xml Web Service 将返回一个包含了公司雇员列表的DataSet对象。请问您该如何在这个程序中使用这个Xml Web Service?( ? )

A.在“引用”对话框的.Net标签中选择System.Web.Services.dll。

B.在“Web引用”对话框中输入这个XML Web service 的地址。

C.在您的Global.asax.cs 中添加一条using 语句并指定这个XML Web service 的地址。

D.在您的Global.asax.cs 中写一个事件处理器导入这个Xml Web Service 相应的.wsdl 和.disco 文件。

26.您要创建一个https://www.doczj.com/doc/cf2232562.html,应用程序在DataGrid控件中显示一个经过排序的列表。产品数据被存放于一个名为PubBase的Microsoft SQL Server 数据库。每个产品的主键是ProductID,Numeri c型并且每个产品有一个字母描述字段,名为ProductName。您使用一个SqlDataAdapter对象和一个SqlCommand对象通过调用一个存储过程从数据

的产品列表。您打算显示以相反的字母顺序排列的ProductName,请问该怎么做?( B )

A. 将SqlCommand对象的CommandType属性修改为CommandType.Text,将CommandText属性修改为”SELECT * FROM procProductList ORDER BY ProductName DESC”。然后将这个DataTable对象绑定到DataGrid控件。

B. 创建一个基于这个DataTable对象的新的DataView并将这个DataView的Sort属性设置为“ProductName DESC”。然后将这个DataView对象绑定到DataGrid控件。

C. 将DataGrid控件的AllowSorting属性设置为True,并将DataGridColumn的SortExpression属性设置为“ProductName DESC”.以显示ProductName。然后将这个DataTable对象绑定到DataGrid控件。

D. 将DataTable对象的DisplayExpression属性设置为“ORDER BY ProductName DESC”.。然后将这个DataTable 对象绑定到DataGrid控件。

76.C#代码实现,确保windows程序只有一个实例(instance)

///

///应用程序的主入口点。

///

[STA Thread]

staticvoid Main()

{

//防止程序多次运行

if(!OneInstance.IsFirst("GetPayInfo"))

{

MessageBox.Show ("警告:程序正在运行中! 请不要重复打开程序!可在右下角系统栏找到!","程序错误提示:",MessageBoxButtons.OK,MessageBoxIcon.Stop);

return;

}

Application.Run(new Form1());

}

// ******************* 防止程序多次执行 **************************

publicabstractclass OneInstance

{

///

///判断程序是否正在运行

///

///程序名称

///如果程序是第一次运行返回True,否则返回False

publicstaticbool IsFirst(string appId)

{

bool ret=false;

if(OpenMutex(0x1F0001,0,appId)==IntPtr.Zero)

{

CreateMutex(IntPtr.Zero,0,appId);

ret=true;

}

return ret;

}

[DllImport("Kernel32.dll",CharSet=CharSet.Auto)]

privatestaticextern IntPtr OpenMutex(

uint dwDesiredAccess, // access

int bInheritHandle, // inheritance option

[DllImport("Kernel32.dll",CharSet=CharSet.Auto)]

privatestaticextern IntPtr CreateMutex(

IntPtr lpMutexAttributes, // SD

int bInitialOwner, // initial owner

string lpName // object name

);

}

3. 简述private、protected、public、internal 修饰符的访问权限。

private : 私有成员, 在类的内部才可以访问。protected : 保护成员,该类内部和继承类中可以访问。public : 公共成员,完全公开,没有访问限制。internal: 在同一命名空间内可以访问。

4. 写出一条Sql语句:取出表A中第31到第40记录(SQLServer, 以自动增长的ID作为主键, 注意:ID可能不是连续的。)

select top 10 * from A where id not in (select top 30 id from A)

解2: select top 10 * from A where id > (select max(id) from (select top 30 id from A )as A)

5 .列举https://www.doczj.com/doc/cf2232562.html, 页面之间传递值的几种方式。

1. 使用QueryString, 如....?id=1; response. Redirect()....

2.使用Session变量

3.使用Server.Transfer

2。请说明在.net中常用的几种页面间传递参数的方法,并说出他们的优缺点。

session(viewstate) 简单,但易丢失

application 全局

cookie 简单,但可能不支持,可能被伪造

input ttype="hidden" 简单,可能被伪造

url参数简单,显示于地址栏,长度有限

数据库稳定,安全,但性能相对弱

2.override与重载的区别

Override用来重写父类的方法,重载使用相同名的方法或操作符拥有不同类型的参数

3、.net的错误处理机制是什么

.net错误处理机制采用try->catch->finally结构,发生错误时,层层上抛,直到找到匹配的Catch为止。

4、C#中接口和类的异同

接口和类都是类,不同的事,接口只包含方法或属性的声明,不包含具体实现方法的代码,接口可以实现多继承,而类只能是单继承,继承接口的类必须实现接口中声明的方法或属性。接口主要定义一种规范,统一调用方法,在大型项目中接口正发挥日益重要的作用。

4、DataReader和DataSet的异同

DataReader和DataSet最大的区别在于,DataReader使用时始终占用SqlConnection,在线操作数据库..任何对SqlConnection的操作都会引发DataReader的异常..因为DataReader每次只在内存中加载一条数据,所以占用的内存是很小的..因为DataReader的特殊性和高性能.所以DataReader是只进的..你读了第一条后就不能再去读取第一条了.. DataSet则是将数据一次性加载在内存中.抛弃数据库连接..读取完毕即放弃数据库连接..因为DataSet将数据全部加载在内存中.所以比较消耗内存...但是确比DataReader要灵活..可以动态的添加行,列,数据.对数据库进行回传更新操作...

1. 在c#中using和new这两个关键字有什么意义,请写出你所知道的意义?

Using 引入一个名子空间,或在使用了一个对像后自动调用其IDespose,New 实例化一个对像,或修饰一个方法,表此方法完全重写此方法

2.在下面的例子里

using System;

class A

{

public virtual void PrintFields(){}

}

class B:A

{

int x=1;

int y;

public B(){

y=-1;

}

public override void PrintFields(){

Console.WriteLine("x={0},y={1}",x,y);

}

当使用new B()创建B的实例时,产生什么输出?X=1,Y=0

3.下面的例子中

using System;

class A

{

public static int X;

static A(){

X=B.Y+1;

}

}

class B

{

public static int Y=A.X+1;

static B(){}

static void Main(){

Console.WriteLine("X={0},Y={1}",A.X,B.Y);

}

}

产生的输出结果是什么?x=1,y=2

4.谈谈类和结构的区别?

最大区别一个是引用类型,一个是值类型默认成员访问为public是另外一个区别

1. 在.net(C# or https://www.doczj.com/doc/cf2232562.html,)中如何获得当前窗体或控件的句柄,特别是控件本身的句柄(请列举)。this(C#) Me(https://www.doczj.com/doc/cf2232562.html,).

2在.net(C# or https://www.doczj.com/doc/cf2232562.html,)中如何用户自定义消息,并在窗体中处理这些消息。

在form中重载DefWndProc函数来处理消息:

protected override void DefWndProc ( ref System.WinForms.Message m )

{

switch(m.msg)

{

case WM_Lbutton :

///string与MFC中的CString的Format函数的使用方法有所不同

string message = string.Format("收到消息!参数为:{0},{1}",m.wParam,m.lParam);

MessageBox.Show(message);///显示一个消息框

break;

case USER:

base.DefWndProc(ref m);///调用基类函数处理非自定义消息。

break;

}

}

3. 在.net(C# or https://www.doczj.com/doc/cf2232562.html,)如何启动另一个程序。process

4. 在.net(C# or https://www.doczj.com/doc/cf2232562.html,)中如何取消一个窗体的关闭

private void Form1_Closing(object sender, https://www.doczj.com/doc/cf2232562.html,ponentModel.CancelEventArgs e)

{

e.Cancel=true;

}

5. 在.net(C# or https://www.doczj.com/doc/cf2232562.html,)中,Appplication.Exit 还是Form.Close有什么不同?

答案:一个是退出整个应用程序,一个是关闭其中一个form

6. 在C#中有一个double型的变量,比如10321.5,比如122235401.21644,作为货币的值如何按各个不同国家的习惯来输出。比如美国用$10,321.50和$122,235,401.22而在英国则为£10 321.50和£122 235 401.22

答案:

System.Globalization.CultureInfo MyCulture = new System.Globalization.CultureInfo("en-US");

//System.Globalization.CultureInfo MyCulture = new System.Globalization.CultureInfo("en-GB");为英国货币类型decimal y = 9999999999999999999999999999m;

string str = String.Format(MyCulture,"My amount = {0:c}",y);

7. 某一密码仅使用K、L、M、N、O共5个字母,密码中的单词从左向右排列,密码单词必须遵循如下规则:(1)密码单词的最小长度是两个字母,可以相同,也可以不同

(2)K不可能是单词的第一个字母

(3)如果L出现,则出现次数不止一次

(4)M不能使最后一个也不能是倒数第二个字母

(5)K出现,则N就一定出现

(6)O如果是最后一个字母,则L一定出现

问题一:下列哪一个字母可以放在LO中的O后面,形成一个3个字母的密码单词?

A) K B)L C) M D) N

答案:B

问题二:如果能得到的字母是K、L、M,那么能够形成的两个字母长的密码单词的总数是多少?

A)1个B)3个C)6个D)9个

答案:A

问题三:下列哪一个是单词密码?

A) KLLN B) LOML C) MLLO D)NMKO

答案:C

8. 62-63=1 等式不成立,请移动一个数字(不可以移动减号和等于号),使得等式成立,如何移动?

答案:62移动成2的6次方

new有几种用法

第一种:new Class();

第二种:覆盖方法

public new XXXX(){}

第三种:new 约束指定泛型类声明中的任何类型参数都必须有公共的无参数构造函数。

2.如何把一个array复制到arrayList里

foreach( object o in array )arrayList.Add(o);

3.datagrid.datasouse可以连接什么数据源[dataset,datatable,dataview]

dataset,datatable,dataview , IList

4.概述反射和序列化

反射:程序集包含模块,而模块包含类型,类型又包含成员。反射则提供了封装程序集、模块和类型的对象。您可

序列化:序列化是将对象转换为容易传输的格式的过程。例如,可以序列化一个对象,然后使用HTTP 通过Internet 在客户端和服务器之间传输该对象。在另一端,反序列化将从该流重新构造对象。

5.概述o/r mapping 的原理

利用反射,配置将类于数据库表映射

7.用sealed修饰的类有什么特点

sealed 修饰符用于防止从所修饰的类派生出其它类。如果一个密封类被指定为其它类的基类,则会发生编译时错误。密封类不能同时为抽象类。

sealed 修饰符主要用于防止非有意的派生,但是它还能促使某些运行时优化。具体说来,由于密封类永远不会有任何派生类,所以对密封类的实例的虚拟函数成员的调用可以转换为非虚拟调用来处理。

11.详述.NET里class和struct的异同!

class:放在? struct放在?

struct值传递

类与结构有很多相似之处:结构可以实现接口,并且可以具有与类相同的成员类型。然而,结构在几个重要方面不同于类:结构为值类型而不是引用类型,并且结构不支持继承。结构的值存储在“在堆栈上”或“内联”。细心的程序员有时可以通过聪明地使用结构来增强性能。

12.概述.NET里对remoting 和webservice 两项技术的理解和实际中的应用。

远程逻辑调用,remoing接口只能用在.net中

13.什么是code-behind技术aspx and cs

14.概述三层结构体系 web/business/dataaccess

https://www.doczj.com/doc/cf2232562.html,如何实现MVC模式,举例说明! web/business/dataaccess

2.什么是https://www.doczj.com/doc/cf2232562.html,中的用户控件

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

3.什么叫应用程序域?什么是受管制的代码?什么是强类型系统?什么是装箱和拆箱?什么是重载?CTS、CLS和CLR分别作何解释?

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

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

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

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

答:结构是值类型,类是引用类型,所以传结构就是值类型的应用啦,传对象或类就是引用类型的,这个不用多写了吧. https://www.doczj.com/doc/cf2232562.html,中常用的对象有哪些?分别描述一下。

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

7.如何理解委托?

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

msdn2005中是这样解释的:

委托具有以下特点:

委托类似于C++ 函数指针,但它是类型安全的。

委托允许将方法作为参数进行传递。

委托可用于定义回调方法。

委托可以链接在一起;例如,可以对一个事件调用多个方法。

方法不需要与委托签名精确匹配。有关更多信息,请参见协变和逆变。

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

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

答:接口是负责功能的定义,项目中通过接口来规范类,操作类以及抽象类的概念!

而类是负责功能的具体实现!

在类中也有抽象类的定义,抽象类与接口的区别在于:

一个类只可以继承一个基类也就是父类,但可以实现多个接口

9.。net中读写数据库需要用到哪些类?他们的作用

答:这个类自已可以写的啊,你是指基类吗?那configuration,sqlconnection,sqlcommand等都要用到.

10.UDP连接和TCP连接的异同。

答:前者只管传,不管数据到不到,无须建立连接.后者保证传输的数据准确,须要连结.

https://www.doczj.com/doc/cf2232562.html,的身份验证方式有哪些?分别是什么原理?

答:form认证,windows集成认证等,原理不清楚.

13.什么是code-Behind技术。

答:代码分离,这是个明智的东西,像ASP这样混成一堆很不爽.或者可以理解成HTML代码写在前台,C#代码写在后台.当然前台也有脚本,类的调用等,其实写在一起也是可以的.

https://www.doczj.com/doc/cf2232562.html,中读写XML的类都归属于哪些命名空间?

答:System.Xml

16.解释一下UDDI、WSDL的意义及其作用。

答:

17.什么是SOAP,有哪些应用。

答:SOAP(Simple Object Access Protocol )简单对象访问协议是在分散或分布式的环境中交换信息并执行远程过程调用的协议,是一个基于XML的协议。使用SOAP,不用考虑任何特定的传输协议(最常用的还是HTTP协议),可以允许任何类型的对象或代码,在任何平台上,以任何一直语言相互通信。这种相互通信采用的是XML格式的消息,具体请看:https://www.doczj.com/doc/cf2232562.html,/2521621.html

20.常用的调用webservice方法有哪些?

答:

可以从浏览器、ASP页或其他WEB服务调用可以使用HTTP-GET HTTP-POST访问WEB服务也可以从ASP页或其他WEB服务向其他WEB服务发出SOAP请求HTTP-GET HTTP-POST SOAP 使用WEB服务代理

6.私有程序集与共享程序集有什么区别?

一个私有程序集通常为单个应用程序所使用,并且存储于这个应用程序所在的目录之中,或此目录下面的一个子目录中。共享程序集通常存储在全局程序集缓存(Global Assembly Cache)之中,这是一个由.NET运行时所维护的程序集仓库。共享程序集通常是对许多应用程序都有用的代码库,比如.NET Framework类。

7.请解释进程与线程的区别?进程与程序的区别?

一般,一个应用程序对应于一个或多个进程,可以把进程看作是该应用程序在*作系统中的标识;而一个进程通常由多个线程组成,而线程是*作系统为该应用程序分配处理时间的最小单元。

8. CLR与IL分别是什么含义?

CLR:公共语言运行时,类似于Java中的JVM,Java虚拟机;在.Net环境下,各种编程语言使用一种共同的基础资源环境,这就是CLR,CLR将直接与*作系统进行通信,而编程语言如C#.NET将尽量避免直接与*作系统直接通信,加强了程序代码的执行安全性,可以这样看:CLR就是具体的编程语言如:C#.NET与*作系统之间的翻译,同时它为具体的编程语言提供了许多资源:

IL,中间语言,也称MSIL,微软中间语言,或CIL,通用中间语言;所有.NET源代码(不管用哪种语言编写)在进行编译时都被编译成IL。在应用程序运行时被即时(Just-In-Time,JIT)编译器处理成为机器码,被解释及执行。

10 .请解释ASP。NET中以什么方式进行数据验证

https://www.doczj.com/doc/cf2232562.html, 中有非空验证,比较验证,取值范围验证,正则表达式验证及客户自定义验证五大控件,另还有一个集中验证信息处理控件

11. WEB控件可以激发服务端事件,请谈谈服务端事件是怎么发生并解释其原理?自动传回是什么?为什么要使用自动传回。

在web控件发生事件时,客户端采用提交的形式将数据交回服务端,服务端先调用Page_Load事件,然后根据传回的状态信息自动调用服务端事件自动传回是当我们在点击客户端控件时,采用提交表单的形式将数据直接传回到务端

只有通过自动传回才能实现服务端事件的机制,如果没有自动回传机制就只能调用客户端事件,而不能调用服务端事件

12. WEB控件及HTML服务端控件能否调用客户端方法?如果能,请解释如何调用?

runat="server" onclick="clientfunction();">

13.请解释web.config文件中的重要节点

appSettings包含自定义应用程序设置。

system.web 系统配置

compilation动态调试编译设置

customErrors自定义错误信息设置

authentication身份验证,此节设置应用程序的身份验证策略。

authorization授权, 此节设置应用程序的授权策略.

14.请解释ASP。NET中的web页面与其隐藏类之间的关系?

一个https://www.doczj.com/doc/cf2232562.html,页面一般都对应一个隐藏类,一般都在https://www.doczj.com/doc/cf2232562.html,页面的声明中指定了隐藏类例如一个页面Tst1.aspx 的页面声明如下

<%@ Page language="c#" Codebehind="Tst1.aspx.cs" AutoEventWireup="false" Inherits="T1.Tst1" %>

Codebehind="Tst1.aspx.cs"表明经编译此页面时使用哪一个代码文件

Inherits="T1.Tst1" 表用运行时使用哪一个隐藏类

15.什么是viewstate,能否禁用?是否所用控件都可以禁用?

Viewstate是保存状态的一种机制,EnableViewState属性设置为false即可禁用

16.当发现不能读取页面上的输入的数据时很有可能是什么原因造成的?怎么解决

很有可能是在Page_Load中数据处理时没有进行Page的IsPostBack属性判断

17.请解释什么是上下文对象,在什么情况下要使用上下文对象

上下文对象是指HttpContext类的Current 属性,当我们在一个普通类中要访问内置对象(Response,Request,Session,Server,Appliction等)时就要以使用此对象

18.请解释转发与跳转的区别?

转发就是服务端的跳转A页面提交数据到B页面,B页面进行处理然后从服务端跳转到其它页面

跳转就是指客户端的跳转

1.请简述一下用Socket进行同步通讯编程的详细步骤

1、在应用程序和远程设备中使用协议和网络地址初始化套接字

2、在应用程序中通过指定端口和地址建立监听

3、远程设备发出连接请求

4、应用程序接受连接产生通信scoket

5、应用程序和远程设备开始通讯(在通讯中应用程序将挂起直到通讯结束)

6、通讯结束,关闭应用程序和远程设备的Socket回收资源

1、在C#中,string str = null 与string str = “” 请尽量使用文字或图象说明其中的区别。string str = null 是不给他分配内存空间,而string str = “”给它分配长度为空字符窜的内存空间. 2、请详述在dotnet中类(class)与结构(struct)的异同:(10分)

Class可以被实例化,属于引用类型,是分配在内存的堆上的,Struct属于值类型,是分配在内存的栈上的.

3、根据委托(delegate)的知识,请完成以下用户控件中代码片段的填写:(10)

namespace test

{

public delegate void OnDBOperate();

public class UserControlBase : https://www.doczj.com/doc/cf2232562.html,erControl

{

public event OnDBOperate OnNew;

privatevoidtoolBar_ButtonClick(objectsender,System.Windows.Forms.ToolBarButtonClickEventArgs e)

{

if(e.Button.Equals(BtnNew))

{

}

}

}

}

____________________________________________________________________

if( OnNew != null )

OnNew( this, e );

4、分析以下代码,完成填空(10分)

string strTmp = "abcdefg某某某";

int i= System.Text.Encoding.Default.GetBytes(strTmp).Length;

int j= strTmp.Length;

以上代码执行完后,i= j= i还真的不知道, j=10

5、SQLSERVER服务器中,给定表table1 中有两个字段ID、LastUpdateDate,ID表示更新的事务号,LastUpdateDate表示更新时的服务器时间,请使用一句SQL语句获得最后更新的事务号。(10)

select top ID from table1 order by LastUpdateData desc

8、简要谈一下您对微软.NET 构架下remoting和webservice两项技术的理解以及实际中的应用。(10) remoting是.net 中用来跨越machine, process, appdomain 进行方法调用的技术,对于三成结构的程序,就可以使用remoting技术来构建.它是分布应用的基础技术.相当于以前的DCOM Web Service是一种构建应用程序的普通模型,并能在所有支持internet网通讯的操作系统上实施。Web Service令基于组件的开发和web的结合达到最佳,基于组件的对象模型

9.什么叫做SQL注入,如何防止?请举例说明。

利用sql关键字对网站进行攻击。过滤关键字'等

所谓SQL注入(SQL Injection),就是利用程序员对用户输入数据的合法性检测不严或不检测的特点,故意从客户端提交特殊的代码,从而收集程序及服务器的信息,从而获取想得到的资料。

http://localhost/lawjia/show.asp?ID=444 and user>0,这时,服务器运行Select * from 表名where 字段=444 and user>0这样的查询,当然,这个语句是运行不下去的,肯定出错,错误信息如下:

·错误类型:

Microsoft OLE DB Provider for ODBC Drivers (0x80040E07)

[Microsoft][ODBC SQL Server Driver][SQL Server]将nvarchar 值'sonybb' 转换为数据类型为int 的列时发生语法错误。

a 产生一个int数组,长度为100,并向其中随机插入1-100,并且不能重复。

int[] intArr=new int[100];

ArrayList myList=new ArrayList();

Random rnd=new Random();

while(myList.Count<100)

{

int num=rnd.Next(1,101);

if(!myList.Contains(num))

myList.Add(num);

}

for(int i=0;i<100;i++)

intArr[i]=(int)myList[i];

20.请叙述类与结构的区别。

1)、结构是值类型;

2)、结构不支持继承;

3)、结构不能定义默认的构造函数;

4)、结构不能定义析构函数;

5)、结构不能使用初始值设置域值。

https://www.doczj.com/doc/cf2232562.html,面试集合

https://www.doczj.com/doc/cf2232562.html,/HappyPrince/archive/2007/03/21/682630.html

1 :维护数据库的完整性、一致性、你喜欢用触发器还是自写业务逻辑?为什么

答:尽可能用约束(包括CHECK、主键、唯一键、外键、非空字段)实现,这种方式的效率最好;其次用触发器,这种方式可以保证无论何种业务系统访问数据库都能维持数据库的完整性、一致性;最后再考虑用自写业务逻辑实现,但这种方式效率最低、编程最复杂,当为下下之策

2 : ADO。NET相对于ADO等主要有什么改进?

答ADO数据以Recordset 形式存储https://www.doczj.com/doc/cf2232562.html,以DataSet形式存储

Recordset对数据库持续连接访问https://www.doczj.com/doc/cf2232562.html,提供对数据库断开连接

https://www.doczj.com/doc/cf2232562.html,与ADO相比,优势在于提供了数据集和数据适配器,有利于实现分布式处理,降低对数据库服务器资源的消耗。

3 : ASP。NET与ASP相比,主要有哪些进步?

答https://www.doczj.com/doc/cf2232562.html, 可以使用强类型语言

页面是编译,执行速度快,增加安全性和可靠性

,通过继承机制来支持代码的重用,提供声明性服务器控件减少代码行数

Asp需要解释,执行速度慢,重用代码不方便,没有调试机制

4:C#中的委托是什么?事件是不是一种委托?

答委托本质上是一种“方法接口”,它相当于C/C++中的函数指针,当然它比函数指针安全,在C#中通常用于事件处理。与JA V A相比,可以避免使用大量小粒度的匿名类。(不过,也许微软就是使用类似于JA V A的匿名类实现委托的,只不过从字面上看起不是那么回事罢了,谁知道呢?)

事件不是委托,不过由于事件的性质决定了处理它的程序逻辑能访问的参数,因此,在C#中处理事件的逻辑都包装为委托(一种“方法接口”)。实际上,如果你处理自定义的事件,就像JA V A中那样用接口实现也是可以的,不过这么做在C#一般没有什么特别的好处。

5:new有几种用法

第一种:new Class();

第二种:覆盖方法

public new XXXX(){}

第三种:new 约束指定泛型类声明中的任何类型参数都必须有公共的无参数构造函数。

6:如何把一个array复制到arrayList里

答foreach( object o in array )arrayList.Add(o);

7:datagrid.datasouse可以连接什么数据源

答[dataset,datatable,dataview] dataset,datatable,dataview , IList

8:概述反射和序列化

答反射:程序集包含模块,而模块包含类型,类型又包含成员。反射则提供了封装程序集、模块和类型的对象。您可以使用反射动态地创建类型的实例,将类型绑定到现有对象,或从现有对象中获取类型。然后,可以调用类型的方法或访问其字段和属性

答序列化:序列化是将对象转换为容易传输的格式的过程。例如,可以序列化一个对象,然后使用HTTP 通过Internet 在客户端和服务器之间传输该对象。在另一端,反序列化将从该流重新构造对象。

9:概述o/r mapping 的原理

答利用反射,配置将类于数据库表映射

10:类成员有( )种可访问形式

答可访问性:public ,protected ,private,internal

11:用sealed修饰的类有什么特点

答sealed 修饰符用于防止从所修饰的类派生出其它类。如果一个密封类被指定为其他类的基类,则会发生编译时错误。密封类不能同时为抽象类。

sealed 修饰符主要用于防止非有意的派生,但是它还能促使某些运行时优化。具体说来,由于密封类永远不会有任何派生类,所以对密封类的实例的虚拟函数成员的调用可以转换为非虚拟调用来处理。

11:列举https://www.doczj.com/doc/cf2232562.html,中的五个主要对象,并简单描述

String strTemp ="abcdefg 某某某";

Int i System.Text.Encoding.Default.GetBytes(strTemp).Length;

Int j = strTemp.Length;

问:i=(14 ) ;j=(11 )

i=(14 ) ;j=(11 ) 中文两个字节

13:C#中,string str = null 与string str ="",请尽量用文字说明区别。(要点:说明详细的内存空间分配)

答string str = null 是不分配内存空间,而string str = "" 给它分配长度为空字符串的内存空间。

14:概述.NET里对remoting 和webservice 两项技术的理解和实际中的应用。

答远程逻辑调用,remoing接口只能用在.net中

15:什么是code-behind技术

答aspx and cs 代码隐藏

16:概述三层结构体系

答表示层数据层业务层

17:用.net做B/S结构的系统,您是用几层结构来开发,每一层之间的关系以及为什么要这样分层?

答:一般为3层

数据访问层,业务层,表示层。

数据访问层对数据库进行增删查改。

业务层一般分为二层,业务表观层实现与表示层的沟通,业务规则层实现用户密码的安全等。

表示层为了与用户交互例如用户添加表单。

优点:分工明确,条理清晰,易于调试,而且具有可扩展性。

缺点:增加成本。

18:什么是https://www.doczj.com/doc/cf2232562.html,中的用户控件

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

19:什么叫应用程序域?什么是受管制的代码?什么是强类型系统?什么是装箱和拆箱?什么是重载?CTS、CLS 和CLR分别作何解释?

答应用程序域可以理解为一种轻量级进程。起到安全的作用。占用资源小

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

强类型系统RTTI:类型识别系统。

装箱就是把值类型到引用类型的转换

拆箱就是引用类型到值类型的转换

重载方法名相同不用个数的参数或者指定不同参数类型

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

class box{

int aa(object i)

{}

object bb()

{}

}

int bb=5

new box().aa(bb) //装箱

int conver=(int)new box().zz(); //拆箱

//重载

public void aaa(int rad)

{ }

public void aaa(int len,int bre )

{ }

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

答:xml可以统一数据格式,XML可是好东西,保存配置,站与站之间的交流,WEB SERVICE都要用它.

21 :https://www.doczj.com/doc/cf2232562.html,中常用的对象有哪些?分别描述一下。

答:Connection 对象用于在应用程序和数据库之间的连接

Command 可以检索和操纵数据库中的数据

DataAdapter对象充当DataSet和数据源之间用于检索和保存数据的桥接器

DataSet 对象从数据库检索的数据可以存储在其中能够以XML形式保存

DataReader 是查询结果的一种只进。只读的视图不具有DataSet的任何复杂功能

所以可以加快访问和查看数据的速度不提供断开式访问

22:如何理解委托?

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

msdn2005中是这样解释的:

委托具有以下特点:委托类似于C++ 函数指针,但它是类型安全的。

委托允许将方法作为参数进行传递。委托可用于定义回调方法

委托可以链接在一起;例如,可以对一个事件调用多个方法。

方法不需要与委托签名精确匹配。

23:C#中的委托是什么?事件是不是一种委托?

答委托可以把一个方法作为参数代入另一个方法。

委托可以理解为指向一个函数的引用。

是,是一种特殊的委托

24:UDP连接和TCP连接的异同。

答: udp前者只管传,不管数据到不到,无须建立连接. tcp后者保证传输的数据准确,须要连结.

25:https://www.doczj.com/doc/cf2232562.html,的身份验证方式有哪些?分别是什么原理?

答:Forms认证,windows集成认证等,passport验证None

26:进程和线程分别怎么理解?

答:进程是老子,线程是儿子,没有老子就没有儿子,一个老子可以有多个儿子.一个儿子可以成为别人的儿子,一个老子也可以为别的老子生儿子.

27:什么是code-Behind技术。

答:代码分离,这是个明智的东西,或者可以理解成HTML代码写在前台,C#代码写在后台.当然前台也有脚本,类的调用等,其实写在一起也是可以的.

28:net中读写XML的类都归属于哪些命名空间?

答:System.Xml

29解释一下UDDI、WSDL的意义及其作用

答:UDDI 用于注册各个服务提供商提供的服务以便可以共享它们它还有助于WEB服务客户或web用户查找该Web服务

wsdl是web服务描述语言(web Services Description Language)

30:什么是SOAP,有哪些应用。

答:SOAP(Simple Object Access Protocol )简单对象访问协议是在分散或分布式的环境中交换信息并执行远程过程调用的协议,是一个基于XML的协议。使用SOAP,不用考虑任何特定的传输协议(最常用的还是HTTP协议),可以允许任何类型的对象或代码,在任何平台上,以任何一直语言相互通信。这种相互通信采用的是XML格式的消息,具体请看

31:如何理解.net中的垃圾回收机制。

答GC?对象创建了总要清除啊,不然内存哪够用?

32:常用的调用webservice方法有哪些?

答远程逻辑调用,remoing接口只能用在.net中

34: 简述private、protected、public、internal 修饰符的访问权限。

答private : 私有成员, 在类的内部才可以访问。

protected : 保护成员,该类内部和继承类中可以访问。

public : 公共成员,完全公开,没有访问限制。

internal: 在同一命名空间内可以访问。

35:列举https://www.doczj.com/doc/cf2232562.html, 页面之间传递值的几种方式。

答. 1.使用QueryString,

源页面

string url;

url="anotherwebform.aspx?name=" + TextBox1.Text

Response.Redirect(url);

目标页面

Label1.Text=Request.QueryString["name"];

2.使用Session变量

源页面

Session["name"]=TextBox1.Text;

Session["email"]=TextBox2.Text;

Server.Transfer("anotherwebform.aspx");

目标页面

Label1.Text=Session["name"].ToString();

Label2.Text=Session["email"].ToString();

Session.Remove("name");

Session.Remove("email");

3.使用Server.Transfer

源页面代码:

public string Name

{

get {

return TextBox1.Text; }

}

//然后调用Server.Transfer方法

private void Button1_Click

(object sender, System.EventArgs e)

{

Server.Transfer("anotherwebform.aspx");

}

目标页面代码:

private void Page_Load

(object sender, System.EventArgs e)

{

WebForm1 wf1;

wf1=(WebForm1)Context.Handler;

Label1.Text=https://www.doczj.com/doc/cf2232562.html,;

}

36:一列数的规则如下: 1、1、2、3、5、8、13、21、34...... 求第30位数是多少,用递归算法实现。答:public class MainClass

{

Console.WriteLine(Foo(30));

}

public static int Foo(int i)

{

if (i <= 0)

return 0;

else if(i > 0 && i <= 2)

return 1;

else return Foo(i -1) + Foo(i - 2);

}

}

37:override与重载的区别

答:

override 与重载的区别。重载是方法的名称相同。参数或参数类型不同,进行多次重载以适应不同的需要Override 是进行基类中函数的重写。为了适应需要。

38:请编程遍历页面上所有TextBox控件并给它赋值为string.Empty?

答:

foreach (System.Windows.Forms.Control control in this.Controls)

{

if (control is System.Windows.Forms.TextBox)

{

System.Windows.Forms.TextBox tb = (System.Windows.Forms.TextBox)control ;

tb.Text = String.Empty ;

}

}

39:请编程实现一个冒泡排序算法?

答:

int [] array = new int [*] ;

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 ;

}

}

}

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

答:不是。可以用任意类型。

41:求以下表达式的值,写出您想到的一种或几种实现方法:1-2+3-4+……+m

答:

int Num = this.TextBox1.Text.ToString() ;

int Sum = 0 ;

for (int i = 0 ; i < Num + 1 ; i++)

ASP NET考试试题及答案详析

一、填空题 (1)ASPX网页的代码储存模式有两种,它们是_代码分离模式__和__单一模式_。 答案:代码分离模式,单一模式 (2)当一个Web控件上发生的事件需要立即得到响时,应该将他的AutoPostBack属性设置为true。 答案:AutoPostBack (3)请将下列数据(nn)在TextBox控件中显示出来。 Double nn=4512.6; TextBox1.Text=nn.Tostring(); 答案:nn.ToString() (4)当需要将TextBox控件作为密码输入框时(要求隐藏密码的代码),应该将控件的TextMode属性设置为Password. 答案:Password (5)下面是一个转移到新网页的指令:Response.Redirect(“新网页的Url”) 答案:新网页的Ur1 (6)在设计阶段必须将各个验证控件的属性指向被验证的控件。 答案:ControlToValidate (7)下面是设置和取出Session对象的代码。 设置Session的代码是: Session[“greeting”]=“hello wang!”; 取出该Session对象的语句如下: string Myvar=; 答案:Session[“greeting”].ToString() (8)下面是使用Application对象时防止竞争的代码。 Application.;//锁定Application对象 Application[“counter”]=(int)Application[“counter”]+1; Application.;//解除对Application对象的锁定 答案:lock(),unlock() (9)废除Session的语句是:。 答案:Session.Abandon() (10)打开文件系统网站时将自动打开一个开发服务器,这是一个轻量级服务器,可以用来对程序进行检查和调试工作。 答案:开发 (11)所谓分布式类就是在多个文件中使用相同的_命名空间_,相同的_类名_,而且每个类的定义前面都加上partial修饰符,编译时编译器就会自动的将这些文件编辑成一个完整的类。答案:命名空间,类名,partial (12)改变Session的有效时间的语句是:Session.Timeout=60;。 答案:Session.Timeout=60; (13)NET与XML紧密结合的最大好处是跨平台传送数据。 答案:跨平台传送数据 (14)网上招聘模板如果使用FormView控件,通常分为上、下两部分.上面部分通常使用FormView控件的模板,用来介绍公司情况并提出招聘要求;下面部分通常用模板,用来输入和存储数据.当应聘者提交数据后应事件中向应聘者发出感谢或收到的信息.答案:Header Insert ItemInserted

.net高级工程师面试题

.net软件工程师面试题 基础题: 1.简述string[]、ArrayList、List的区别。 数组: 优点: o数组在内存中是连续存储的,索引速度非常快; o赋值和修改元素也很简单; 不足: o两个数据之间插入数据比较麻烦; o声明数组的时候,必须指明数组的长度,数组长度过长会造成内存浪费,数组的长度过短,会造成数据溢出错误。 ArrayList: 优点: https://www.doczj.com/doc/cf2232562.html, framework 提供的用于数据存储和检索的专用类 o大小依据存储的数据来动态扩展和收缩 o继承IList,可以方便的进行数据的添加、插入和删除 缺点: o允许插入不同类型的数据,都当做object类型处理 o数据处理时可能出现类型不匹配的错误

o存在装箱(值=》引用)拆箱的操作,会带来很大的性能损耗 List: 优点: o声明List集合时,需要声明集合内数据的对象类型 o避免了类型安全问题和装箱拆箱的性能问题 2.简述装箱和拆箱操作中的性能损耗是如何产生的。 3.简述对https://www.doczj.com/doc/cf2232562.html,中的事件机制的理解。 4.在一个https://www.doczj.com/doc/cf2232562.html,的三层结构系统中,以登录操作为例,简述在各层中如何组织代码。 5.简述相比DATASET,实体类在WEB项目中的优点与缺点。 6.简述GC是如何工作的。 Java采用VM(Virtual Machine)机制,由VM来管理程序的运行当然也包括对GC管理。90年代末期.NET出现了,.NET采用了和Java类似的方法由CLR(Common Language Runtime)来管理。 Garbage Collector(垃圾收集器,在不至于混淆的情况下也成为GC)以应用程序的root 为基础,遍历应用程序在Heap上动态分配的所有对象[2],通过识别它们是否被引用来确定哪些对象是已经死亡的、哪些仍需要被使用。已经不再被应用程序的root或者别的对象所引用的对象就是已经死亡的对象,即所谓的垃圾,需要被回收。这就是GC工作的原理。为了实现这个原理,GC有多种算法。比较常见的算法有Reference Counting,Mark Sweep,Copy Collection等等。目前主流的虚拟系统.NET CLR,Java VM和Rotor都是采用的Mark Sweep算法。

(完整word版)https://www.doczj.com/doc/cf2232562.html,面试题132道

1. 简述private、protected、public、internal 修饰符的访问权限。 答 . private : 私有成员, 在类的内部才可以访问。 protected : 保护成员,该类内部和继承类中可以访问。 public : 公共成员,完全公开,没有访问限制。 internal: 在同一命名空间内可以访问。 2 .列举https://www.doczj.com/doc/cf2232562.html, 页面之间传递值的几种方式。 答. 1.使用QueryString, 如....?id=1; response. Redirect().... 2.使用Session变量 3.使用Server.Transfer 3. 一列数的规则如下: 1、1、2、3、5、8、13、21、3 4...... 求第30位数是多少,用递归算法实现。 答:public class MainClass { public static void Main() { Console.WriteLine(Foo(30)); } public static int Foo(int i) { if (i == 0) return 0; else if(i > 0 && i <= 2) return 1; else return Foo(i -1) + Foo(i - 2); } } 4.C#中的委托是什么?事件是不是一种委托? 答: 委托可以把一个方法作为参数代入另一个方法。 委托可以理解为指向一个函数的引用。 是,是一种特殊的委托 5.override与重载的区别 答: override 与重载的区别。重载是方法的名称相同。参数或参数类型不同,进行多次重载以适应不同的需要 Override 是进行基类中函数的重写。为了适应需要。

Net软件工程师面试题精编版

N e t软件工程师面试题公司内部编号:(GOOD-TMMT-MMUT-UUPTY-UUYY-DTTI-

一.填空题(每空1分,共12分) 1面向对象的语言具有__封装______性、__继承_______性、__多态______性。2能用foreach遍历访问的对象需要实现____Ienumerable____________接口或声明_____GetEnumerator___________方法的类型。 3当类T只声明了私有实例构造函数时,则在T的程序文本外部,___不可以___(可以or不可以)从T派生出新的类,在T的内部__可以__(可以or不可以)直接创建T的任何实例,在T的外部__不可以__(可以or不可以)直接创建T 的任何实例。 4.委托声明的关键字是__Delegate____ 5.override与重载的区别:override覆盖是基类中函数的重写。重载:方法或函数的名称相同,参数或许参数类型不同,进行多次重载实现功能。 二.不定项选择(每题2分,共18) Question 1 以下叙述正确的是: A.接口中可以有虚方法。 B.一个类可以实现多个接口。 C.接口不能被实例化。 D.接口中可以包含已实现的方法。 Question 2 以下描述错误的是() 1.在C++中支持抽象类而在C#中不支持抽象类。 2. C++中可在头文件中声明类的成员而在CPP文件中定义类的成员,在C#中没有头文件并且在同一处声明和定义类的成员。

3.在C#中可使用new修饰符显式隐藏从基类继承的成员。 4.在C#中要在派生类中重新定义基类的虚函数必须在前面加Override。Question 3 声明一个委托public delegate int myCallBack(int x);则用该委托产生的回调方法的原型应该是 1. void myCallBack(int x) 2. int receive(int num) 3. string receive(int x) 4.不确定的 Question 4 下列描述错误的是() a)类不可以多重继承而接口可以; b)抽象类自身可以定义成员而接口不可以; c)抽象类和接口都不能被实例化; d)一个类可以有多个基类和多个基接口; Question 5 下列关于构造函数的描述正确的是() a)构造函数可以声明返回类型。 b)构造函数不可以用private修饰 c)构造函数必须与类名相同 d)构造函数不能带参数 Question 6

.NET_初中高级开发人员面试题

初级.NET 开发人员- 任何使用.NET 的人都应知道的 1. 描述线程与进程的区别?进程是系统所有资源分配时候的一个基本单位,拥有一个完整的虚拟空间地址,并不依赖线程而独立存在。进程可以定义程序的一个实例,但它只是占据应用程序所使用的地址空间。为了让进程完成一定的工作,进程必须至少占有一个线程,这个线程即为主线程,默认程序的工作都在这个主线程中完成,可以通过程序创建多个线程,使多个线程可以同时运行(多CPU 支持下),这就是多线程技术。 线程(Thread )与进程(Process )二者都定义了某种边界,不同的是进程定义的是应用程序与应用程序之间的边界,不同的进程之间不能共享代码和数据空间,而线程定义的是代码执行堆栈和执行上下文的边界。同一进程中的不同线程共享代码和数据空间。 2. 什么是Windows 服务,它的生命周期与标准的EXE 程序有什么不同? Windows 服务是运行在windows 后台指定用户下(默认System )的应用程序,它没有标准的UI 界面,相比标准的EXE 程序,Windows 服务是在服务开始的时候创建,而在服务结束的时候销毁,而且可以设置服务是否与操作系统一起启动,一起关闭。它支持三种方式:1 )自动方式2)手动方式3 )禁用。自动方式下,Windows服务控制器将指导OS启动后自动启动服务并运行,而手动方式则必须手工启动服务,禁用的情况下服务将不能被启动。另外标准的EXE 默认使用的当前登录的用户,而Windows 服务则默认使用System 用户,这在对系统资源访问的时候特别需要注意。 3. Windows 上的单个进程所能访问的最大存量是多少?它与系统的最大虚拟存一样吗?这对于系统设计有什么影响? 这个需要针对硬件平台,公式为单个进程能访问的最大存量=2 的处理器位数次方/2 ,比如通常情况下,32 位处理器下,单个进程所能访问的最大存量为:2 32/2 = 2G 。单个进程能访问的最大存量是最大虚拟存的1/2 ,因为要分配给操作系统一半虚拟存。 4. EXE 和DLL 之间的区间是什么? EXE 文件有一个入口点,比如说Main()函数,这样CLR 可以由此处执行这个EXE 文件,而DLL 不包含这样一个入口点所以不是可执行的。DLL 文件主要包含一些程序集供其它函数调用。 5. 什么是强类型,什么是弱类型?哪种更好些?为什么? 强类型是在编译的时候就确定类型的数据,在执行时类型不能更改,而弱类型在执行的时候才会确定类型。没有好不好,二者各有好处,强类型安全,因为它事先已经确定好了,而且效率高。一般用于编译型编程语言,如C# 、Java 与C++ 等,弱类型相比而言不安全,在运行的时候容易出现错误,但它灵活,多用于解释型编程语言,如Javascript,VB 等。 6. PID 是什么?在做系统的故障排除时如何使用它? PID 是进程编号,在系统发现故障的时候,可以根据它寻找故障所发生的具体进程。可通过Visual Studio 将故障进程附加到进程中进行调试。 7. 单个TCP/IP 端口上能够被多少个进程侦听? 1个 8. 什么是GAC ?它解决了什么问题? GAC 是Global Assembly Cache ,全局程序集缓存的简称。它解决了几个程序共享某一个程序集的问题。不必再将那个被共享的程序集拷贝到应用程序目录了,.NET 应用程序在

.NET开发人员面试题(含答案)

.NET开发人员试题(综合) 每题5分 1、用.net做B/S结构的系统,您是用几层结构来开发,每一层之间的关系以及为什么要这样分层? 2、软件开发过程一般有几个阶段?每个阶段的作用? 3、请列举一些您用到过的设计模式以及在什么情况下使用该模式? 4、您对编程的兴趣如何?工作中遇到不懂的问题是怎样去解决的?您一般怎样去提高自己的编程水平? 5、您离职的原因是什么?

.NET开发人员试题(基础) 一、填空:每题2分 1.面向对象的语言具有继承性、封装性、多态性。 2. 能用foreach遍历访问的对象需要实现 IEnumerable _接口或声明 3.委托声明的关键字是delegate ? 4.在.Net托管代码中我们不用担心内存漏洞,这是因为有了gc __? 5.当类T只声明了私有实例构造函数时,则在T的程序文本外部,不可以(可以or 不可以)从T派生出新的类,不可以(可以or 不可以)直接创建T的任何实例。 二、单选:每题2分 6.在对SQL Server 数据库操作时应选用(A)。 a)SQL Server .NET Framework 数据提供程序; b)OLE DB .NET Framework 数据提供程序; c)ODBC .NET Framework 数据提供程序; d)Oracle .NET Framework数据提供程序; 7.以下描述错误的是(A) a)在C++中支持抽象类而在C#中不支持抽象类。 b)C++中可在头文件中声明类的成员而在CPP文件中定义类的成员,在C#中没有头文件并且在同一处声明和定义类的成员。 c)在C#中可使用new 修饰符显式隐藏从基类继承的成员。 d)在C#中要在派生类中重新定义基类的虚函数必须在前面加Override。 8.C#的数据类型有(A) a)值类型和调用类型; b)值类型和引用类型; c)引用类型和关系类型; d)关系类型和调用类型; 9.下列描述错误的是(D) a)类不可以多重继承而接口可以; b)抽象类自身可以定义成员而接口不可以; c)抽象类和接口都不能被实例化; d)一个类可以有多个基类和多个基接口; 10.在DOM中,装载一个XML文档的方法(D) a)save方法b)load方法c)loadXML方法d)send方法

net面试题(程序员必看 附答案)

NET面试题一 想看答案往下翻 .NET技术题 1.类成员有几种可访问性? 2.用sealed修饰的类有什么特点 3.执行下面代码后: String strTemp ="abcdefg 某某某"; Int i System.Text.Encoding.Default.GetBytes(strTemp).Length; Int j = strTemp.Length; 1.问:i,j分别为多少并说明理由 4.概述三层结构体系? https://www.doczj.com/doc/cf2232562.html,中读写XML的类都归属于哪些命名空间? 6.a=10,b=15,在不用第三方变量的前提下,把a,b的值互换? 7.对数据的并发采用什么办法进行处理较好。 8.override与重载的区别? 9.如果在一个B/S结构的系统中需要传递变量值,但是又不能使用Session、Cookie、Application,您 有几种方法进行处理? 10.什么叫应用程序域 11.CTS、CLS、CLR分别作何解释 12.什么是装箱和拆箱 13.什么是Code-Behind技术 14.GC是什么? 为什么要有GC 15.接口是否可继承接口? 抽像类是否可实现(implements)接口? 抽像类是否可继承实体类(concrete class)? 16.数组有没有length()这个方法? String有没有length()这个方法? 17.堆和栈的区别? 18.请指出GAC的含义 19.DataReader与Dataset有什么区别 20.在c#中using和new这两个关键字有什么意义,请写出你所知道的意义? 21.C/S结构模式与B/S结构模式的主要区别是什么 22.C#中的数组类型有何特点? 23.ASP。NET与ASP相比,主要有哪些进步? 24.结构和类的区别是什么? 25.&和&&的区别 26.<%#%>和<%%>有什么区别? 27.在https://www.doczj.com/doc/cf2232562.html,中,下列代码运行后的输出结果是? DataTable dt = new DataTable(); dt.Columns.Add(“编号“,typeof(System.Int16)); dt.Columns.Add(“成绩“,typeof(System.Int16)); for(int i=1; i<=3;i++){ dataRow dr = dt.NewRow(); dr[0]=i;

.net开发工程师面试问题

竭诚为您提供优质文档/双击可除.net开发工程师面试问题 篇一:net开发工程师面试题 姓名:日期: 1、简述private、protected、public、internal修饰符的访问权限。 2、c#中的委托是什么?编写一个简单的委 托代码。3、c#中抽象类是什么?编写一个简单的抽象类代码。4、例举https://www.doczj.com/doc/cf2232562.html,页面之间传值的几种方式。5、override 与重载的区别? 6、求出下表达式的值1-2+3-4+……..+m=?(要求:任意写出一种实现方法) 7、.net中读写数据库需要用到哪些类?他们的作用是什么? 8、简述.net异常处理机制? 9、写出下面题目的sql语句: 表1tb_bmbm部门基本信息表 bmbm部门编码bmmc部门名称 表2tb_bmje部门月营业表, yy年mm月 bmbm部门编码je部门营业额 a.要求写一条sql语句查询有哪些部门年累计营业

额>1000的,注意要按年yy,部门名称bmmc分组的累计金额查询。 b.查找表1中有哪些部门不在表2中(查询条件为季度累计营业额>200)。 10、用一条sql语句查询出每门课都大于80分的学生姓名。 —1— —2— 篇二:c#.net开发工程师面试题 c#开发工程师面试题 答题人______________________ 答题日期______________________ 1.简述c#中类与结构的异同及适用情形 2.请编写一段你最熟悉的数组排序算法 3.假使(用https://www.doczj.com/doc/cf2232562.html,)开发了一个资讯类网站,新闻列表及内容均为每次从数据库加载,对 于优化该网站,你有什么好的想法? 4.简述dictionary(dictionary)与hashtable异同,及各自适用的情形 5.表 student(classidint,studentidint,scoreint)class(clas sidint,classname

DoNet面试题(选择题)

1.下面有关用户控件与aspx页面区别说法错误的是(B) A.用户控件不能再包含

标记,而aspx页面可以包含 B.用户控件不能触发服务器端的事件,只是一种外观重用方式,而aspx页面可以 C.用户控件继承自https://www.doczj.com/doc/cf2232562.html,erControl,而aspx页面继承自System.Web.UI.Page D.用户控件可以包含其它用户控件,但是不能直接访问,必须包含在某个aspx页面中才可以访问,而aspx 页面是可以直接访问的 2.想在在aspx页面使用用户控件,则aspx页面开始部分必须添加下面哪个页面指令A A. <%@ Page %> B.<%@ Master %> C. <%@ Control %> D. <%@ Register %> 3.根据你的理解,你认为第三控件与用户控件的主要区别是A A.第三方控件是编译后的代码,后缀为dll,只要应用程序引用进来,就可以使用,而用户控件是页面文件,属于非编译代码,只限于在当前应用程序中使用 B.用户控件比第三方控件更灵活,可以在应用程序中多个地方使用 C.用户控件出现在工具箱中,而第三方控件不会出现在工具箱中 D.用户控件比第三方控件的执行效率要高一些 4.下面关于HttpHandler与HttpModule说法正确的是C A.一个Http请求中可以经历多个HttpModule和一个HttpHandler B.一个Http请求中可以经历多个HttpHandler和一个HttpModule C.HttpModule是一个Http请求的最终处理者 D.HttpHandler通常做一些停止数据向客户端输出的操作 5.在aSPNET中,关于HttpHandler说法不正确的是:(D) A.通常文件后缀名为ashx B.它是一个Http请求处理的最终点 C.它实现了IHttpHandler D.当它的IsReusable属性为false时,表示只能使用一次 6.下面哪个选项不能在web.config文件中配置的(C) A.连接字符串 B.身份验证 C.网站导航 D.程序出现错误时,定向到的错误提示页面 7.aSPNET支持三种验证方式,不属于其中的是(B) A.passport B.SqlServer身份 C.Windows

新网络工程师面试题(含答案)

同方易豪网络工程师面试考题 姓名时间分数 网络基础知识选择题(20分,每题2分) 1、(多选)下列选项中哪些属于TCP/IP应用层的协议() A) FTP B) 802.1q C) Telnet D) SNMP E) TCP F) IP 2、(多选)下列选项中哪些属于TCP/IP网际层的协议() A) FTP B) 802.1q C) IP D) ICMP E) TCP F) ARP 3、(多选)下列网络设备中哪些能够隔离冲突域?() A) Hub B) Switch C) Repeater D) Router 4、(多选)FTP协议使用的端口号是?() A) 7 B) 20 C) 21 D) 23 E) 25 5、下列哪种协议的目的是从已知MAC地址获得相应的IP地址() A)TELNET B)HTTP C)ARP D)RARP E)ICMP 6、IP地址172.16.10.17 255.255.255.252的网段地址和广播地址分别是?() A) 172.16.10.0 172.16.10.254 B) 172.16.10.10 172.16.10.200 C) 172.16.10.16 172.16.10.19 D) 172.16.10.8 172.16.10.23 7、(多选)如果局域网互联采用普通交换机,则PC与交换机之间可采用哪种线连接?() A、EIA/TIA 568B直通线; B、EIA/TIA 568A直通线; C、反转线; D、交叉线 8、下列地址中属于D类地址的是? () A、192.168.1.1; B、202.99.1.1; C、221.0.0.9; D、224.0.0.5 9、HDLC协议工作在OSI七层模型中的哪一层?() A、物理层; B、数据链路层; C、传输层; D、会话层 10、现今的综合布线一般采用的是() A.总线型拓扑结构

最新的。net面试题及答案

最新的.Net面试题及答案 文章分类:.net编程 引用 最新的.Net面试题及答案 1.a=10,b=15,在不用第三方变题的前提下,把a,b的值互换 a=a+b;b=a-b;a=(a-b)/2;b=b+a 2:已知数组int[] max={6,5,2,9,7,4,0};用快速排序算法按降序对其进行排列,并返回数组public class TestQuickSort { private int[] array = null; private void quickSort(int lowest, int highest) { if (array == null || lowest < 0 || lowest >= highest || highest >= array.length) { return; } int low = lowest; int high = highest; int key = low++; for (; low <= high;) { if (key < high) { if (array[key] > array[high]) { array[high] = array[key] + (array[key] = array[high]) * 0; key = high; } high--; } if (key > low) { if (array[key] < array[low]) { array[low] = array[key] + (array[key] = array[low]) * 0; key = low; } low++; } } quickSort(lowest, key - 1); quickSort(key + 1, highest); } /** * @param args */

技术岗位(.net工程师)面试初试题

技术岗位(.net工程师)初试题 应聘人姓名:应聘时间: 1.简述 private、 protected、 public、internal 修饰符的访问权限 2.列举https://www.doczj.com/doc/cf2232562.html,页面之间传递值的几种方式 3.C#中的委托是什么?事件是不是一种委托? 4.实现多态的过程中overload 与override 的区别 5.用.net做B/S结构的系统,您是用几层结构来开发,每一层之间的关系以及为什么要这样分层? 6.什么是装箱和拆箱? https://www.doczj.com/doc/cf2232562.html,中常用的对象有哪些?分别描述一下。 8.在C#中,string str = null 与string str = “”请说明其中的区别。 9.请详述在C#中类(class)与结构(struct)的异同? 10.SQLSERVER服务器中,给定表table1 中有两个字段ID、LastUpdateDate,ID表示更新的事务号,LastUpdateDate表示更新时的服务器时间,请使用一句SQL语句获得最后更新的事务号。 11.写出一条Sql语句:取出表A中第31到第40记录(SQLServer,以自动增长的ID作为主键,注意:ID可能不是连续的。

12.GC是什么? 13.String s = new String("xyz");创建了几个String Object? 14.try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后? 15.进程和线程的区别? 16.堆和栈的区别? 17.面向对象的语言具有________性、_________性、________性。 18.C#中的接口和类有什么异同。

c#考试试题及答案(9页)

一.选择题(30分) ( B )1.以下哪一个命名空间是在进行Sql Server数据库访问时必须加载的? (A) System.Data.Odbc (B) System.Data.SqlClient (C) System.Data.OleDb (D) System.Data.SqlTypes ( B )2.以下哪一种参数是设置非Windows集成安全下的数据库连接? (A) Trusted_Connection=Yes (B) user id=sa;password=111 (C) Integrated Security=True (D) Integrated Security=SSPI ( A )3.数据库连接中的参数设置Connection Timeout=10表示 (A) 设置数据库连接超时为10秒钟 (B) 设置数据库连接超时为10毫秒 (C) 设置数据库连接的用户最多为10个 (D) 设置数据库连接的次数不能超过10次 ( A )4.SQL语句“delete from department”,需要SqlCommand对象的哪一个方法在执行? (A) ExecuteNonQuery() (B) ExecuteScalar() (C) ExecuteReader() (D) ExecuteXmlReader() ( B )5.SQL语句“select count(*) from employee”,需要SqlCommand对象的哪一个方法在执行? (A) ExecuteNonQuery() (B) ExecuteScalar() (C) ExecuteReader() (D) ExecuteXmlReader() ( A )6.SQL语句“Create Table department(id integer,name char(10))”,需要SqlCommand对象的哪一个方法在执行? (A) ExecuteNonQuery() (B) ExecuteScalar() (C) ExecuteReader() (D) ExecuteXmlReader() ( B )7.让控件不可用的属性是以下哪一个 (A) AllowDrop (B) Enabled (C) Bounds (D) Visible ( D )8.让控件不可见的属性是以下哪一个? (A) Cursor (B) Enabled (C) Dock (D) Visible ( C )9.设置控件布局位置的属性是以下哪一个? (A) DisplayRectangle (B) FlatStyle (C) Dock (D) Location ( D )10.用于设置时间的控件是以下哪一个? (A) Timer (B) ComboBox (C) DateTime (D) DateTimePicker

NET软件工程师48个面试题目

NET软件工程师48个面试题目

.NET软件工程师48个面试题目 一.填空题 1.面向对象的语言具有(继承)性、(多态)性、(封装)性。 2.能用foreach遍历访问的对象需要实现(IEnumberable)接口或声明(GetEnumberator)方法的类型。 3.列举https://www.doczj.com/doc/cf2232562.html,中的五个主要对象(Command)、(Connection)、(DataReader)、(DataSet)、(DataAdapter)。 4.C#中的三元运算符是__(?:)__ 5.当整数a赋值给一个object对象时,整数a将会被__(装箱)___ 6.类成员有__(3)__种可访问形式 7.float f=-123.567F;int i=(int)f;i的值现在是_(-123)__

8.委托声明的关键字是___(delegate)_ 9.在https://www.doczj.com/doc/cf2232562.html,中所有的自定义用户控件都必须继承自_ (https://www.doczj.com/doc/cf2232562.html,erControl) __ 10.在.Net中所有可序列化的类都被标记为__[serializable]___ 11.在.Net托管代码中我们不用担心内存漏洞,这是因为有了_ GC __ 12.当类T只声明了私有实例构造函数时,则在T的程序文本外部,_不能够_(能够or 不能够)从T派生出新的类,_不能够_(能够or 不能够)直接创立T的任何实例。 二.选择题 1.以下叙述正确的是:BC A. 接口中能够有虚方法。 B. 一个类能够实现多个接口。 C. 接口不能被实例化。 D. 接口中能够包含已实现的方法。

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

(完整word版)c笔试题经典50题(含答案),推荐文档

uanji 内测/月考 类型:(笔试)范围:内测/月考 日期:时长:1小时 总分数:100 分 姓名:准考证号: 证件号码: 理论部分 注意:考试结束试卷必须交回,答案填写在答题卡上

1.( )关键字用于在C#中从派生类中访问基类的成员。(选一项) A、new B、super C、this D、base 2.C#程序可以依据()来进行方法重载。(选一项) A、不同的参数个数 B、不同的参数名称 C、不同的返回值 D、不同的方法名称 3.C#中的方法重写使用关键字(选一项) A、override B、overload C、static D、inherit 4.C#中关于委托,下面说法正确的是(选一项) A、委托是一种类的成员 B、委托必须定义在类中 C、定义委托需要使用delegate关键字

D、委托是一种数据类型 5.System.String类的()方法不能删除字符串中的空格。(选一 项) A、Replace() B、Trim() C、Remove() D、EndsWith() 6.关于抽象类下面说法错误的是(选一项) A、抽象类可以包含非抽象方法 B、含有抽象方法的类一定是抽象类 C、抽象类不能被实例化 D、抽象类可以是密封类 7.关于接口的使用,说法错误的是(选一项) A、接口可以作为参数进行传递 B、接口可以作为方法的返回值 C、接口可以实例化 D、同时实现多个接口是变相实现了多重继承 8.下列泛型集合声明正确的是(选一项)

A、List f = new List() B、List f = new List() C、List f = new List() D、List f = new List 9.下列关于C#索引器理解正确的是(选一项) A、索引器的参数必须是两个或两个以上 B、索引器的参数类型必须是整数型 C、索引器没有名字 D、以上皆是 10.已知C#某接口中有一个Show( )方法,下面对该方法原型的定义 正确的是(选一项) A、public void Show( ) B、public virtual void Show( ) C、void Show( ) D、virtual void Show( ) 11.以下的C#程序: public class A{} public class B:A{} public class Test

中级服务工程师面试试题

运维服务部中级服务工程师面试试题 姓名:____________ 应聘职务:________________ 分数:__________ 一.填空题(20分) 1. CRM是指:客户关系管理。ITSS是:信息技术服务标准。 2. 错误提示“An error occurred during the compilation of a resource required to service this request ”是什么意思一个请 求的资源在编译时发生了一个错误。 3.OSI将网络通信工作分为七层,由高到低依次为物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。 4. 计算机常用的拓扑结构有:星形拓扑、总线形拓扑、环型拓扑、树形拓扌卜、网形拓扌卜、混合形拓扌卜。 5. 项目管理的三要素时间、成本、质量。 6. Raid技术至少需要几块磁盘:Raid 0 2 块、Raid 1 2 块、Raid 5 3块。 7.ISS 是指:In ter net In formatio n Services 的缩写,意为互联网 信息服务,是由微软公司提供的基于运行Microsoft Windows的互联网基本服务。 8. DNS是指:(Domain NameSystem,域名系统),因特网上作为域名 禾口IP 地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。

9.SQL Server自动备份需要启动的服务是:SQLServer Age nt服务。 10.安装SQL 2005标准版时,CPL核心数必须是2的n次方。 二.选择题(从答案中选出至少一个正确答案,20 分) 1. 以下说法正确的是(ABCD) A. F TP服务默认的端口号为:21 B. Tel net服务默认的端口号为:23 C.P0P3服务默认的端口号为:110 D.SMTP服务默认的端口号为25 2. 建立知识库,实现知识库共享,主要是为了( D) A. 提高一线运维工程师解决问题的速度。 B. 提高二线运维工程师解决问题的速度。 C. 提高专家团队解决问题的速度。 D. 以上都是。 3. 当客户存在失误时,IT 服务人员应该采取哪一种方式来回应( B) A. 直接对客户说“你搞错了”。 B. 用“我觉得这里存在误解”来间接地说明客户的错误。 C. 直接对客户说“这不是我的错”。 D. 对客户说“怎么搞的,重新填”。 4. 工程师甲到用户现场处理问题,当问题处理完后,用户说他们这里还有一个小问题,急需处理,能否帮忙处理,甲发现该问题可以处理,但不在自己的维护范围内。你认为他最适当的正确做人应该是以下那一项(A)

200多个C#面试题含答案

一.选择,填空题 1.在https://www.doczj.com/doc/cf2232562.html,中,对于Command对象的ExecuteNonQuery()方法和ExecuteReader()方法, 下面叙述错误的是(C)。 a)insert、update、delete等操作的Sql语句主要用ExecuteNonQuery()方法来执行; b)ExecuteNonQuery()方法返回执行Sql语句所影响的行数。 c)Select操作的Sql语句只能由ExecuteReader()方法来执行;~ d)ExecuteReader()方法返回一个DataReder对象; 2.面向对象的语言具有__继承性_性、_封装性_性、_多态性性。 3.能用foreach遍历访问的对象需要实现________________接口或声明 ________________方法的类型。(@) 答:IEnumerable 、 GetEnumerator() 4.在C#中,表示一个字符串的变量应使用以下哪条语句定义?( B ) A. CString str; B. string str; C. Dim str as string D. char * str; 5.在C#编制的财务程序中,需要创建一个存储流动资金金额的临时变量,则应使用下列哪 条语句?( A ) A. decimal theMoney; B. int theMoney; C. string theMoney; D. Dim theMoney as double 6.C#中,新建一字符串变量str,并将字符串”Tom's Living Room”保存到串中,则应该 使用下列哪条语句?(B) A. string str = “Tom\'s Living Room”; B. string str = “Tom's Living Room”; C. string str(“Tom's Living Room”); D. string str(“Tom”s Living Room”); 7.应用https://www.doczj.com/doc/cf2232562.html, 访问数据时,Connection 对象的连接字符串中Initial Catalog 子串的含义是 ( A ) A. Connection 对象连接到的数据库的名称 B. Connection 对象的身份验证信息 C. Connection 对象的最大连接时间 D. Connection 对象使用的缓存大小 8.使用Visual Studio .NET 的”新建C# 项目”创建一个名为”SimpleForm”的Windows 表单应用程序,则在生成_______文件中可设置该程序集的Copyright、Trademark 等属 性信息.( D )

腾讯_DotNet面试题_参考答案

答题要求:打*号的部分为必答题,未指明为多选题的选择题均为单选题。 一、.Net Framework部分* 1.装箱、拆箱操作发生在: ( C ) A.类与对象之间 B.对象与对象之间 C.引用类型与值类型之间 D.引用类型与引用类型之间 2.用户类若想支持Foreach语句需要实现的接口是: ( B ) A.IEnumerable B.IEnumerator C.ICollection D.ICollectData https://www.doczj.com/doc/cf2232562.html, Framework通过什么与COM组件进行交互操作?( C ) A.Side By Side B.Web Service C.Interop D.PInvoke https://www.doczj.com/doc/cf2232562.html,依靠以下哪一项技术解决COM存在的Dll Hell问题的?( A ) A.Side By Side B.Interop C.PInvoke https://www.doczj.com/doc/cf2232562.html,+ 5.装箱与拆箱操作是否是互逆的操作?( A ) A.是 B.否 6.以下哪个是可以变长的数组?( D ) A.Array B.string[] C.string[N] D.ArrayList 7.用户自定义异常类需要从以下哪个类继承:( C ) A.Exception B.CustomException C.ApplicationException D.BaseException 8.以下代码段中能否编译通过?请给出理由。 try { } catch(FileNotFoundException e1) { } catch(Exception e2) { } catch(IOException e3) { } catch { }

最新网络工程师面试题目汇总--国企面试

简单题目 1: 交换机是如何转发数据包的? 答:交换机通过学习数据帧中的源MAC地址生成交换机的MAC地址表,交换机查看数据帧的目标MAC地址,根据MAC地址表转发数据,如果交换机在表中没有找到匹配项,则向除接受到这个数据帧的端口以外的所有端口广播这个数据帧。 2、windows查看本机网卡mac地址的命令是什么? 答:在光标闪烁处输入:ipconfig /all,注意:ipconfig和/中间有1个空格,all后面没有标点。然后,回车。 3、TCP与UDP协议的主要区别?

答:TCP---传输控制协议,提供的是面向连接、可靠的字节流服务。当客户和服务器彼此交换数据前,必须先在双方之间建立一个TCP连接,之后才能传输数据。TCP提供超时重发,丢弃重复数据,检验数据,流量控制等功能,保证数据能从一端传到另一端。 UDP---用户数据报协议,是一个简单的面向数据报的运输层协议。UDP不提供可靠性,它只是把应用程序传给IP层的数据报发送出去,但是并不能保证它们能到达目的地。由于UDP在传输数据报前不用在客户和服务器之间建立一个连接,且没有超时重发等机制,故而传输速度很快。 4、linux配置2块网卡的IP地址,第一块为192.168.10.1,第二块为192.168.10.2,如何配置命令? 答:Ifconfig eth0 192.168.10.1; ifconfig eth1 192.168.10.2 如果要永久保存,可 用: Netconfig以及netconfig –d eth1来配置IP,配完后service network restart 5、写出1433、110、161端口对应的协议以及具体用途 答:1433用于sqlserver;110:sun公司的rpc服务端口;161:snmp,远程设备信息获取。 6、请解释Vtp协议和作用? 答:Vtp:VLAN中继协议,VTP,VLAN TRUNKING PROTOCOL,是CISCO专用协议,大多数交换机都支持该协议。VTP负责在VTP域内同步VLAN信息,这样就不必在每个交换上配置相同的VLAN信息。VTP还提供一种映射方案,以便通信流能跨越混合介质的骨干。VTP最重要的作用是,将进行变动时可能会出现在的配置不一致性降至最低。不过,VTP也有一些缺点,这些缺点通常都与生成树协议有关. 7、限制内部一部分电脑浏览网页其余电脑不受限制用什么方法?具体语句是什么? 答:access-list 101 deny tcp [网络号] [反掩 码] any eq http Access-list 101 permit ip any any 8、ARP和RARP各用在什么场合?

相关主题
相关文档 最新文档