应聘.net开发工程师常见的面试题(四)

1.在Asp.net中所有的自定义用户控件都必须继承自________?

答:Control。

2.在.Net中所有可序列化的类都被标记为_____?

答:[serializable]

3.在.Net托管代码中我们不用担心内存漏洞,这是因为有了______?

答:GC。

4.下面的代码中有什么错误吗?_______

using System;

class A

{

public virtual void F(){

Console.WriteLine(“A.F”);

}

}

abstract class B:A

{

public abstract override void F(); 答:abstract override 是不可以一起修饰.

} // new public abstract void F();

5.当类T只声明了私有实例构造函数时,则在T的程序文本外部,___可以___(可以 or 不可以)从T派生出新的类,不可以____(可以 or 不可以)直接创建T的任何实例。

答:不可以,不可以。

6.下面这段代码有错误么?

switch (i){

case(): 答://case()条件不能为空

CaseZero();

break;

case 1:

CaseOne();

break;

case 2:

dufault; 答://wrong,格式不正确

CaseTwo();

break;

}

7.在.Net中,类System.Web.UI.Page 可以被继承么?

答:可以。

8..net的错误处理机制是什么?

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

9.利用operator声明且仅声明了==,有什么错误么?

答:要同时修改Equale和GetHash() ? 重载了”==” 就必须重载 “!=”

10.在.net(C# or vb.net)中如何用户自定义消息,并在窗体中处理这些消息。

答:在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:

处理的代码

default:

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

break;

}

}

11.在.net(C# or vb.net)中如何取消一个窗体的关闭。

答:private void Form1_Closing(object sender, System.ComponentModel.CancelEventArgs e)

{

e.Cancel=true;

}

12.在.net(C# or vb.net)中,Appplication.Exit 还是 Form.Close有什么不同?(winform题目非asp.net题目)

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

13.在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);

14.某一密码仅使用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次方

15.对于这样的一个枚举类型:

enum Color:byte

{

Red,

Green,

Blue,

Orange

}

答:string[] ss=Enum.GetNames(typeof(Color));

byte[] bb=Enum.GetValues(typeof(Color));

16. C#中 property 与 attribute的区别,他们各有什么用处,这种机制的好处在哪里?

答:attribute:自定义属性的基类;property :类中的属性

17.C#可否对内存进行直接的操作?

答:在.net下,.net引用了垃圾回收(GC)功能,它替代了程序员 不过在C#中,不能直接实现Finalize方法,而是在析构函数中调用基类的Finalize()方法

18.ADO。NET相对于ADO等主要有什么改进?

答:1:ado.net不依赖于ole db提供程序,而是使用.net托管提供的程序,2:不使用com3:不在支持动态游标和服务器端游 4:,可以断开connection而保留当前数据集可用 5:强类型转换 6:xml支持

19.写一个HTML页面,实现以下功能,左键点击页面时显示“您好”,右键点击时显示“禁止右键”。并在2分钟后自动关闭页面。

答:<script language=javascript>

setTimeout(‘window.close();’,3000);

function show()

{

if (window.event.button == 1)

{

alert(“左”);

}

else if (window.event.button == 2)

{

alert(“右”);

}

}

</script>

20.大概描述一下ASP。NET服务器控件的生命周期

答:初始化 加载视图状态 处理回发数据 加载 发送回发更改通知 处理回发事件 预呈现 保存状态 呈现 处置 卸载

21.Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?

答:不能,可以实现接口

22.Static Nested Class 和 Inner Class的不同,说得越多越好

答:Static Nested Class是被声明为静态(static)的内部类,它可以不依赖于外部类实例被实例化。而通常的内部类需要在外部类实例化后才能实例化。

23.,&和&&的区别。

&是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and).

24.HashMap和Hashtable的区别。

答:HashMap是Hashtable的轻量级实现(非线程安全的实现),他们都完成了Map接口,主要区别在于HashMap允许空(null)键值(key),由于非线程安全,效率上可能高于Hashtable.

25.short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?

答:short s1 = 1; s1 = s1 + 1; (s1+1运算结果是int型,需要强制转换类型)

short s1 = 1; s1 += 1;(可以正确编译)

26.Overloaded的方法是否可以改变返回值的类型?

答:Overloaded的方法是可以改变返回值的类型。

27.error和exception有什么区别?

答:error 表示恢复不是不可能但很困难的情况下的一种严重问题。比如说内存溢出。不可能指望程序能处理这样的情况。

exception 表示一种设计或实现问题。也就是说,它表示如果程序运行正常,从不会发生的情况。

28.<%# %> 和 <% %> 有什么区别?

答:<%# %>表示绑定的数据源

<% %>是服务器端代码块

29.你觉得ASP.NET 2.0(VS2005)和你以前使用的开发工具(.Net 1.0或其他)有什么最大的区别?你在以前的平台上使用的哪些开发思想(pattern / architecture)可以移植到ASP.NET 2.0上 (或者已经内嵌在ASP.NET 2.0中)

答:1 ASP.NET 2.0 把一些代码进行了封装打包,所以相比1.0相同功能减少了很多代码.

2 同时支持代码分离和页面嵌入服务器端代码两种模式,以前1.0版本,.NET提示帮助只有在分离的代码文件,无 法 在页面嵌入服务器端代码获得帮助提示,

3 代码和设计界面切换的时候,2.0支持光标定位.这个我比较喜欢

4 在绑定数据,做表的分页.UPDATE,DELETE,等操作都可以可视化操作,方便了初学者

5 在ASP.NET中增加了40多个新的控件,减少了工作量

30.重载与覆盖的区别?

答:1、方法的覆盖是子类和父类之间的关系,是垂直关系;方法的重载是同一个类中方法之间的关系,是水平关系

2、覆盖只能由一个方法,或只能由一对方法产生关系;方法的重载是多个方法之间的关系。

3、覆盖要求参数列表相同;重载要求参数列表不同。

4、覆盖关系中,调用那个方法体,是根据对象的类型(对象对应存储空间类型)来决定;重载关系,是根据调 用时的实参表与形参表来选择方法体的。

时间: 2024-10-11 04:51:06

应聘.net开发工程师常见的面试题(四)的相关文章

应聘.net开发工程师常见的面试题(一)(转载)

1. 简述 private. protected. public. internal 修饰符的访问权限. 答 . private : 私有成员, 在类的内部才可以访问. protected : 保护成员,该类内部和继承类中可以访问. public : 公共成员,完全公开,没有访问限制. internal: 在同一命名空间内可以访问. 2 .列举ASP.NET 页面之间传递值的几种方式. 答. 1.使用QueryString, 如….?id=1; response. Redirect()…. 2.

应聘.net开发工程师常见的面试题(二)(转载)

1.公司要求开发一个继承System.Windows.Forms.ListView类的组件,要求达到以下的特殊功能:点击ListView各列列头时,能按照点击列的每行值进行重排视图中的所有行 (排序的方式如DataGrid相似).根据您的知识,请简要谈一下您的思路 答:根据点击的列头,包该列的ID取出,按照该ID排序后,在给绑定到ListView中. 2.给定以下XML文件,完成算法流程图. <FileSystem> < DriverC > <Dir DirName=”MSD

应聘.net开发工程师常见的面试题(五)

1.描述一下C#中索引器的实现过程,是否只能根据数字进行索引? 答:不是.可以用任意类型. 2.在C#中,string str = null 与 string str = ” ” 请尽量使用文字或图象说明其中的区别. 答:null是没有空间引用的: ” ” 是空间为0的字符串: 3.分析以下代码,完成填空 string strTmp = “abcdefg某某某”; int i= System.Text.Encoding.Default.GetBytes(strTmp).Length; int j

应聘.net开发工程师常见的面试题(三)(转载)

1.产生一个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++) int

Android开发工程师必看面试题:java基础知识盘点

面向对象编程(OOP) Java是一个支持并发.基于类和面向对象的计算机编程语言.下面列出了面向对象软件开发的优点: 代码开发模块化,更易维护和修改. 代码复用 增强代码的可靠性和灵活性 增加代码的可理解性. 面向对象编程有很多重要的特性,比如:封装,继承,多态和抽象.下面的章节我们会逐个分析这些特性. 封装 封装给对象提供了隐藏内部特性和行为的能力.对象提供一些能被其他对象访问的方法来改变它内部的数据.在Java当中,有3种修饰符:public,private和protected.每一种修饰符

Android开发工程师必看面试题:(三)

1.什么是ANR 如何避免它? http://blog.csdn.net/Zengyangtech/archive/2010/11/21/6025671.aspx 2.什么情况会导致Force Close ?如何避免?能否捕获导致其的异常? 3.Android本身的api并未声明会抛出异常,则其在运行时有无可能抛出runtime异常,你遇到过吗?诺有的话会导致什么问题?如何解决? 会有运行时异常, 运行时异常无需捕捉 4.简要解释一下activity. intent .intent filter

张金龙——应聘——java开发工程师

本人所学专业是嵌入式技术与应用专业(java开发方向).有两年的软件开发经历,在校期间主要学习了jsp开发web程序,MyBatis,Spring,Spring MVC等web框架,Android四大组件,Andorid企业级开发应用组件等.做过<人力资源管理>,<宿舍管理系统>,<分布式爬虫系统>等项目. (详细信息见求职简历,已上传至文件) 本人对编程具有兴趣,做事认真负责,适应能力强.在学校担任项目组长,学习组长,技术水平较高.大二期间,担任16级的助教,Java

Android开发工程师必看笔试题:Java基础选择题(一)

1.在Java中,( )类提供定位本地文件系统,对文件或目录及其属性进行基本操作.(单选) A) FileInputStream B) FileReader C) FileWriter D) File 2. Java中的集合类包括ArrayList.LinkedList.HashMap等类,下列关于集合类描述错误的是()(单选) A) ArrayList和LinkedList均实现了List接口 B) ArrayList的访问速度比LinkedList快 C) 添加和删除元素时,ArrayLis

c++后台开发面试常见知识点总结(四)数据库

数据库的索引类型 聚集索引和非聚集索引的区别(叶节点存储内容) 唯一性索引和主码索引的区别 索引的优缺点,什么时候使用索引,什么时候不能使用索引(重点) 索引最左前缀问题 数据库中事务的ACID 数据库隔离性设置不同会出现的问题(脏读.不可重复读.丢失修改.幻读) Mysql有四个隔离级别:未提交读,提交读,可重复读,可串行化. Mysql的优化(高频,索引优化,性能优化) 数据库引擎介绍,innodb和myisam的特点与区别 数据库连接池的作用 讲讲你用过的所有锁,除了互斥锁与读写锁比如自旋