DOTNET软件工程师面试试题~~~~~~

合集下载

.NET面试试题

.NET面试试题

.NET面试试题第一篇:.NET面试试题1、“请做一下自我介绍。

”回答思路:①介绍内容要与个人简历相一致;②表情自然、面带微笑,表述方式上尽量口语化、但是讲到技术时尽量用专业化语言;③要切中要害(如:基本信息介绍、项目经验介绍/工作经验介绍),不谈无关、无用的内容;④时间要合理、条理要清晰、层次要分明;⑤事先最好以文字的形式写好背熟。

)2、“谈谈你做过的项目情况。

”回答思路:①考察学员所做项目是否真实、思路是否清晰;②列举做过的项目数量,以2—3个为宜,其中主要讲解一个项目。

③最好所做的项目和应聘企业主要产品是相同或类似的,技术方向一致。

比如应聘企业主要是做金融系统,项目中就可以说××企业的开放基金项目。

④必须介绍项目几大要素(名称、客户、时间、技术、业务)3、“你对加班的看法。

”回答思路:①如果是工作需要,特别是项目进度的要求,是非常乐意加班的;4、“你对工资的要求是多少?你是否接受××元的工资?”回答思路:①我遵守公司的人力资源薪酬体系②如果非得要求开工资,1000元左右③我也相信当我为公司做的贡献足够大时,公司也会考虑我的薪水问题。

我相信薪水是做出来的,不是谈出来的。

5、“你的优点和缺点是什么?”谈缺点的回答思路:①不宜说自己没缺点;②不宜把那些明显的优点说成缺点;③不宜说出严重影响所应聘职位的缺点;④不宜说出令人不放心、不舒服的缺点;⑤可以说出一些对于所应聘职位“无关紧要”的缺点,甚至是一些表面上看似“缺点”,从工作的角度看却是优点的“缺点”。

谈优点的常规思路:①优点一定要对公司有帮助的;②优点一定要简明扼要;③对优点要准备好一些案例6、“谈谈你对公司的了解”回答思路:考察求职者对招聘公司的重视程度、行业、主要业务、主要领导人、企业规模、企业文化7、“你的朋友对你是如何评价的?”回答思路:①回答要是正面的积极的;②回答要符合该公司的企业文化;③举例说明8、“你为什么选择我们公司?”回答思路:①建议从行业、企业和岗位这三个角度来回答;9、“你如何评价过去的公司?”(针对去外地工作的学员)回答思路:①将公司简单介绍一下②不能上讲以前公司的不好,要比较公平的负责的评价以前的公司10、“你有什么业余爱好和特长?”回答思路:①业余爱好能在一定程度上反映应聘者的性格、观念、心态,而特长则更进一步体现了我们的个性特征,这是招聘单位提问的主要原因;②最好不要说自己没有业余爱好,企业并不需要读死书的“书呆子”;③不要说自己有那些庸俗的、令人感觉不好的爱好;④回答的爱好和特长尽量能符合该公司的企业文化跟岗位需求)11、“谈谈你的家庭情况”回答思路:①简单地罗列家庭人口;②强调温馨和睦的家庭氛围;③强调家庭成员对自己工作的支持;④强调自己对家庭的责任感。

DOTNET面试题(初级中级)参考答案net

DOTNET面试题(初级中级)参考答案net

中软强网DOTNET程序员面试题(初级中级)参考答案姓名:年龄:籍贯:应聘岗位:期望薪金:最低薪金:期望培训方向:联系方式:住址:1.填空: 评分标准:一空1分,满分10分。

(1)面向对象的语言具有________性、_________性、________性。

继承性、封装性、多态性。

(考基本概念)(2)能用foreach遍历访问的对象需要实现________________接口或声明________________方法的类型。

IEnumerable 、GetEnumerator (对foreach机制的理解,本来不想出这题的,凑分)(3)列举中的五个主要对象_______________、_____________、_______________、______ _________、_________________。

... (送分题, 对的了解)2. 不定项选择:评分标准: 一题5分,不选或者错选均不得分。

漏选得2分。

满分10分。

(1) 以下叙述正确的是:A. 接口中可以有虚方法。

B. 一个类可以实现多个接口。

C. 接口不能被实例化。

D. 接口中可以包含已实现的方法。

B、C (考对接口的理解)(2) 从数据库读取记录,你可能用到的方法有:A. ExecuteNonQueryB. ExecuteScalarC. FillD. ExecuteReaderB、C、D (考查对的熟练程度)3. 简述private、protected、public、internal 修饰符的访问权限。

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

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

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

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

评分标准:答对1题2分,2题5分,3题7分。

全对10分。

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

DoNet面试题面试相关DotNet面试题_3

DoNet面试题面试相关DotNet面试题_3

.Net 面试题(三)字符串、集合和流的使用1.System.String是值类型还是引用类型答:是引用类型,它的对象在初始化之后就不能再作修改,任何试图修改字符串对象的动作将导致一个新的字符串对象的产生。

2.StringBuilder类型有何作用答:StringBuilder采用构造器设计模式的思想高效地构造一个字符串对象,在构造过程中StringBuilder可以有效避免临时字符串对象的生成。

一旦StringBuilder的ToString方法被调用后,最终的字符串就被生成,而随后的操作将导致一个新的字符串对象的分配。

因为字符串对象的不可修改特性,StringBuilder还经常被用来和非托管代码交互。

3.如何在String和Byte[]对象之间进行转换答:字符串和字节数组的转换依赖于编码方式的使用,不同的编码标准将使用不同的算法进行。

System.Text.Encoding类型提供了大部分常见的编码算法支持,用以进行字符串和字节数组之间的转换。

4.简述BASE64编码的作用以及C#中对其的支持答:BASE64编码是一种用于混淆明码的编码方式,其算法是把原先的8位字节数组顺序分配到新的6位字节数组中,再在每个字节的高2位填充0来组成新的8位字节数组。

在.NET 中Convert类可以用来进行BASE64字符串和8位字节数组之间的转换。

5.什么是字符串池机制答:字符串池机制致力到发送程序的性能。

CLR会保留程序中出现过的字符串对象的集合,并且在需要新的字符串时,先检查已有的集合,在查找成功时返回已有对象的引用。

字符串池机制可以通过程序集元数据特性进行控制,C#默认的机制是打开字符串池机制。

6.int[]是引用类型还是值类型答:数组类型是一族类型,都继承自System.Array,而System.Array又继承自System.Object,所有的数组类型都是引用类型。

7.数组之间如何进行转换答:数组类型在符合条件的情况下可以进行隐式地转换,条件包括:数组维数必须相同;目标项目类型和源项目类型必须存在在隐式或者显示转换关系;源数组的项目类型不是值类型。

.net软件工程师面试题

.net软件工程师面试题

.net软件工程师面试题3 .软件测试方法分为()()。

4 . .NET通过对各语言先编译成(),然后再执行时用()将其编译成本地平台代码,来实现异构平台下对象的互操作5 .在SQL SERVER中游标的声明的语句是()释放的语句是()。

6 . SQL SERVER的编程语言是()语言7 .委托声明的关键字是()。

8 .在MS SQL Server中,用来显示数据库信息的系统存储过程是()9. SQL语言中,用于事务回滚的语句是()。

10 .如果两个实体之间具有M : N联系,则将它们转换为关系模型的结果是()个表。

11 . Codebehind 主要是通过把()和()放在不同的文件中来实现代码分离的。

12 .在C#中由值类型转换为引用类型称为(),有引用类型转换为值类型称为()13 . SQL SERVER 中索引类型包括的三种类型分别是()()()。

14 .软件工程的三大文档()()()。

15.在SQL SERVER2000 中的四中约束()()()()。

二.简答题1.什么是中间语言(IL) ?它的作用? 2 . C#中与基类通信的关键字什么?作用是什么? 3 .什么是元数据?4. ASP。

NET和ASP的主要优势?5. Override与重载有什么区别?6 . SQL SERVER中的触发器的理解?7. ref与out有什么区别?8 .大概描述下ASP。

NET中服务器控件的生命周期?9 .什么是强类型系统?10 .触发器分为事前触发和事后触发,有何区别?11 .谈谈final, fin ally, fin alize 的区别。

12 .在.n et (C# or )中,Appplication.Exit 还是Form.Close有什么不同?13 . C#中的委托是什么?事件是不是一种委托?14 .值类型和引用类型的区别?15 .解释下C#中的方法的重载?16 .分析类和结构的异同?17. & 和&&的区别。

Dotnet软件开发求职试题集合

Dotnet软件开发求职试题集合

(8).net 中读写数据库需要用到那些类?他们的作用? (9)security 公司的网络管理工程师 mr. leak 最近发现有不少来自公司外部 ip 的请求,试图非法访问公司内部资源,为了不影响数据访问流程。他不得不写一 个高效的程序——一个工作在 ipv4 上的防火墙, 如果请求来自非授权的 ip 地址, 则将请求丢弃。为了便于管理,通过文本文件 ip.txt 来配置授权的 ip 地址,文 件格式为每行(’/n’)一个 ip 地址(或 ip 段),范围不超过一个 b 类。例 如: 162.105.91.163 59.66.105.0 59.66.105.255 211.71.0.0 211.71.255.255 限制:ip 段的起止地址间以空格隔开。文件不超过 10 万行,内存不超过 4m 字 节。 要求:请编写一个程序,读入 ip.txt 文件。并从标准输入接受一个 ip 地址。如 果该地址在授权范围内,则在标准输出上打印 y,否则打印 n.如果输入为一个空 行,程序结束。 请给出思路(文字描述),完成代码,分析你采用算法的优劣。请列举测试方法 和思路 (10)写出不带头结点的双向链表的插入排序算法。
.net 软件开发求职试题集合
笔试网()
简答题:
(1)请编程遍历页面上所有 textbox 控件并给它赋值为 string.empty? (2)什么叫 assembly qualified name?它是一个文件名吗?它有什么不同? (3)什么是 interface?它与 class 有什么区别? (4)aspx 和 aspx.cs 和 aspx.resx 的关系。工作原理 (5)重载(overload)和重写(overried,有的书也叫做“覆盖”)的区别? (6)几种判断空字符串的方法和特点 (7)一列数的规则如下: 1、1、2、3、5、8、13、21、34. 求第 30 位数是多少, 用递归算法实现。

DotNet面试题汇总

DotNet面试题汇总

DotNet面试题汇总1.a=10,b=15,在不用第三方变题的前提下,把a,b的值互换a=a+b;b=a-b;a=a-b;据说还可以这样:a^=b^(b^=a^b); 不了解是什么原理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*/public static void main(String[] args) { TestQuickSort test = new TestQuickSort(); int[] array = {6,5,2,9,7,4,0};test.array = array;test.quickSort(0, array.length - 1);int length = test.array.length;for (int i = 0; i < length; i++) {System.out.println(test.array[i]);}}}快速排序是综合性能最好的内部排序算法!3.请简述面向对象的多态的特性及意义!多态:面向对象的语言使用虚方法表达多态。

dotNet面试题

dotNet面试题
} public class B: A {
public B()
{ Console.Writ eLine('B'); } public new void Fun() { Console.Writ eLine("B.Fu n()"); } public static void Main() { A a = new B(); a.Fun();
产品表 销售计划表 ProductID 产品名 单 价
ProductID 客户名 订货数量 销售单价
1 name1 110
2
m
2
250
2 name2 220
1
n
3
110
3 name3 330
3
n
1
300
4 name4 440
4
m
2
400
1.是否能删 除产品表中 的name2? 请说明理由 与过程。 2.将销售计 划表中m客 户的产品名 为name2的 销售单价更 换为产品表 中相应的单 价 3.求销售计 划表中各客 户各自的销 售总金额的 sql语句
}
} 1. A B A.Fun() 2. A B B.Fun() 3. B A A.Fun() 4. B A B.Fun()
Question 45. (单选) Which of these string definitions will prevent escaping on backslashes in C#?* 1. string s = # ”n Test string”; 2. string s = “’ n Test string ”;
Question 33. (单选)
int[][] myArray3=n ew int[3][]{new int[3]{5,6,2 },new int[5]{6,9,7, 8,3},new int[2]{3,2}} ; myArray3[2] [2]的值是 ()。

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

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

.NET软件工程师48个面试题目一.填空题1.面向对象的语言具有(继承)性、(多态)性、(封装)性。

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

3.列举中的五个主要对象(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.在中所有的自定义用户控件都必须继承自_ (erControl) __10.在.Net中所有可序列化的类都被标记为__[serializable]___11.在.Net托管代码中我们不用担心内存漏洞,这是因为有了_ GC __12.当类T只声明了私有实例构造函数时,则在T的程序文本外部,_不可以_(可以or 不可以)从T派生出新的类,_不可以_(可以or 不可以)直接创建T的任何实例。

二.选择题1.以下叙述正确的是:BCA. 接口中可以有虚方法。

B. 一个类可以实现多个接口。

C. 接口不能被实例化。

D. 接口中可以包含已实现的方法。

2.从数据库读取记录,你可能用到的方法有:BCDA. ExecuteNonQueryB. ExecuteScalarC. FillD. ExecuteReader3.对于一个实现了IDisposable接口的类,以下哪些项可以执行与释放或重置非托管资相关的应用程序定义的任务?(多选) ( ABC )A.CloseB.DisposeC.FinalizeingE.Quit4.以下关于ref和out的描述哪些项是正确的?(多选) ( ACD )A.使用ref参数,传递到ref参数的参数必须最先初始化。

net工程师面试题目(3篇)

net工程师面试题目(3篇)

第1篇第一部分:基础知识与框架理解1. 请简述.NET Framework和.NET Core的区别,以及.NET 5/6/7的主要更新和改进。

2. 解释什么是LINQ(Language Integrated Query),并举例说明其在C中的应用。

3. 请描述C中的委托(Delegate)和事件(Event)的概念,以及它们之间的区别。

4. 解释什么是面向对象编程(OOP),并列举至少三个OOP原则。

5. 请简述异常处理(Exception Handling)在C中的重要性,并说明try-catch-finally语句的用法。

6. 解释什么是接口(Interface)和抽象类(Abstract Class),并举例说明它们在C中的应用。

7. 请描述C中的泛型(Generics)的概念,并说明其优点。

8. 解释什么是异步编程(Asynchronous Programming),并举例说明其在.NET Core中的应用。

9. 请简述依赖注入(Dependency Injection)的概念,并说明其在.NET开发中的重要性。

10. 解释什么是单元测试(Unit Testing),并列举至少两种常用的单元测试框架。

第二部分:框架应用与开发实践11. 请简述 Core Web API的基本概念,并说明如何创建一个基本的Web API项目。

12. 解释什么是RESTful API设计,并举例说明如何实现RESTful API的GET、POST、PUT、DELETE操作。

13. 请描述如何使用Entity Framework Core(EF Core)进行数据库操作,包括如何定义模型、配置数据库连接以及进行CRUD操作。

14. 解释什么是中间件(Middleware),并举例说明如何在 Core WebAPI中实现自定义中间件。

15. 请描述如何使用 Core Identity进行用户认证和授权。

16. 解释什么是缓存(Caching),并列举至少两种常用的缓存策略。

100道C#面试题(.net开发人员必备)

100道C#面试题(.net开发人员必备)

100道C#面试题(.net开发人员必备)注明:经过本人面试的经历和在网上的资料整理出来的100道比较常见的C#面试题,想当初面试公司虽然不是很多,第一次找工作用了近两周的时间面试了二十多家公司,成功的不到十家,最后选择了一家大型的软件公司干了两个月就走人了。

后来又找了一周工作,面试了十一家公司,成功9家。

现在已经在公司工作了快两年的时间了。

以下的面试题也是自己曾经做过的,希望能帮助更多的同行找到满意的工作1. .NET和C#有什么区别答:.NET一般指 .NET FrameWork框架,它是一种平台,一种技术。

C#是一种编程语言,可以基于.NET平台的应用。

2.一列数的规则如下: 1、1、2、3、5、8、13、21、34...... 求第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);}}3. C#中的委托是什么?事件是不是一种委托?答 : 委托可以把一个方法作为参数代入另一个方法。

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

是,是一种特殊的委托4. 简述 private、 protected、 public、internal 修饰符的访问权限。

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

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

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

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

5. override与重载的区别答:override 与重载的区别。

腾讯_DotNet面试题_参考答案

腾讯_DotNet面试题_参考答案

答题要求:打*号的部分为必答题,未指明为多选题的选择题均为单选题。

一、.Net Framework部分*1.装箱、拆箱操作发生在: ( C )A.类与对象之间B.对象与对象之间C.引用类型与值类型之间D.引用类型与引用类型之间2.用户类若想支持Foreach语句需要实现的接口是: ( B )A.IEnumerableB.IEnumeratorC.ICollectionD.ICollectData Framework通过什么与COM组件进行交互操作?( C )A.Side By SideB.Web ServiceC.InteropD.PInvoke依靠以下哪一项技术解决COM存在的Dll Hell问题的?( A )A.Side By SideB.InteropC.PInvoke+5.装箱与拆箱操作是否是互逆的操作?( A )A.是B.否6.以下哪个是可以变长的数组?( D )A.ArrayB.string[]C.string[N]D.ArrayList7.用户自定义异常类需要从以下哪个类继承:( C )A.ExceptionB.CustomExceptionC.ApplicationExceptionD.BaseException8.以下代码段中能否编译通过?请给出理由。

try{}catch(FileNotFoundException e1){}catch(Exception e2){}catch(IOException e3){}catch{}不能编译通过,因为e3是e2的子类,所有属于e3异常会被e2捕获。

9.对于一个实现了IDisposable接口的类,以下哪些项可以执行与释放或重置非托管资源相关的应用程序定义的任务?(多选) ( BD )A.CloseB.DisposeC.FinalizeingE.Quit依赖以下哪项技术实现跨语言互用性?( C )A.CLRB.CTSC.CLSD.CTT11.请问: String类与StringBuilder类有什么区别?为什么在.Net类库中要同时存在这2个类?(简答)和JAVA中的StringBuffer类似,StringBuilder可以提高字符串连接时的性能。

DotNet面试、笔试题汇总2

DotNet面试、笔试题汇总2

本文集中了多条常见的C#.Net经典面试题目例如.NET中类和结构的区别页面之间传递值的几种方式?,并简明扼要的给出了答案,希望能对学习C#.Net的读者有所帮助1,请你说说.NET中类和结构的区别?答:结构和类具有大体的语法,但是结构受到的限制比类要多结构不能申明有默认的构造函数,为结构的副本是又编译器创建和销毁的,所以不需要默认的构造函数和析构函数结构是值类型,所以对结构变量所做的改变不会影响其的原值,而类是应用类型,改变其变量的值会改变其原值申明结构用Struck关键字,申明类用class关键字,向方法传递结构是时是通过值传递的,而不是通过引用与类不同,结构的实例化可以不使用New关键字类可以实现接口2,死锁的必要条件?怎么克服?答:系统的资源不足,进程的推进的顺序不合适,资源分配不当,一个资源每次只能被一个进程使用,一个资源请求资源时,而此时这个资源已阻塞,对已获得资源不放,进程获得资源时,未使用完前,不能强行剥夺3,接口是否可以继承接口?抽象类是否可以实现接口?抽象类是否可以继承实体类?答:接口是可以继承接口的,抽象类是可以实现接口的,抽象类可以继承实体类,但是有个条件,条件是,实体类必须要有明确的构造函数4,构造器Constructor是否可以被继承?是否可以被Override?答:Constructor不可以被继承,因此不能被重写(Overriding),但可以被重载(Overloading).5,当一个线程进入一个对象的方法后,其它线程是否可以进入该对象的方法?答:不可以,一个对象的方法只能由一个线程访问6,用最有效的方法算出等于几?[ 8]答:2<<3.7, C#是否可以对内存直接进行操作?答:这个问题比较难回答,也是个很大的问题但是可以这样问答C#是可以对内存进行直接操作的,虽然很少用到指针,但是C#是可以使用指针的,在用的时候需要在前边加unsafe,,在.net中使用了垃圾回收机制(GC)功能,它替代了程序员,不过在C#中不可以直接使用finalize方法,而是在析构函数中调用基类的finalize()方法8,Error和Exception有是区别?答:error表示恢复不是不可能,但是很困难,exception表示一种实际或实现问题,它表示程序运行正常不可以发生的9,谈谈final,finally,finallize的区别?答:final用于申明属性,方法和类,表示属性不可变,方法不可以被覆盖,类不可以被继承Finally是异常处理语句结构中,表示总是执行的部分Finallize表示是object类一个方法,在垃圾回收机制中执行的时候会被调用被回收对象的方法10, HashMap和Hashtable区别?答:HashMap是Hashtable的轻量级实现,非线程安全的实现他们都实现了map接口,主要区别是HashMap键值可以为空null,效率可以高于Hashtable11,Collection和Collections的区别?答:Collection是集合类的上级接口,Collections是针对集合类的一个帮助类,它提供一系列静态方法来实现对各种集合的搜索,排序,线程安全化操作12,C#中委托是什么?事件是不是一种委托?答:委托是一种安全的类似与函数指针,但是她比指针要安全的多,它可以把方法作为一个参数传递给另一个方法,可以理解为指向函数的引用事件是一种消息机制,它是一种委托,委托不带方法体13,Override, Overload,的区别?答:Override是重写的意思,它表示重写基类的方法,而且方法的名称,返回类型,参数类型,参数个数要与基类相同Overload是重载是意思,它也表示重写基类的方法,但是只要方法名相同,别的可以不同14,在一个BS结构中需要传递变量值时,不能使用session,coolke,application,你有几中方法?答:this.server.Transfer,Querystring.15, C#种索引器实现过程,是否只能根据数字索引?答:不是的,可以是任意类型17,任何把一个Array复制到Arraylist中?答:Foreach (object o in Array), ArrayList.Add (0)等有好多中种方法自己想18,概述反射和序列化?答:反射:要给发射下一个定义还是比较难的,这里先说说我的理解反射提供了封装程序集,模块和类型对象,可以用反射动态地创建类型的实例,将类型绑定到现有对象,或者从现有对象类型里获取类型,然后调用类型的方法或访问字段和属性序列化:将对象转换为另一种媒介传输的格式过程如,序列化一个对象,用Http通过internet在客户端和服务器之间传递该对象,在另一端用反序列化从该流中重新得到对象19,Const和ReadOnly?答:Const用来申明编程时申明常量,ReadOnly用来申明运行时常量20,UDP和TCP连接有和异同?答:TCP是传输控制协议,提供的是面向连接的,是可靠的,字节流服务,当用户和服务器彼此进行数据交互的时候,必须在他们数据交互前要进行TCP连接之后才能传输数据TCP提供超时重拨,检验数据功能UDP是用户数据报协议,是一个简单的面向数据报的传输协议,是不可靠的连接21,进程和线程分别该怎么理解?答:进程是比线程大的程序运行单元,都是由操作系统所体会的系统运行单元,一个程序中至少要有一个进程,有一个进程中,至少要有一个线程,线程的划分尺度要比进程要小,进程拥有独立的内存单元,线程是共享内存,从而极大的提高了程序的运行效率同一个进程中的多个线程可以并发执行22,页面之间传递值的几种方式?答:QueryString,session,cookies,application,server.Transfer,respose.redictor.23. 什么叫应用程序域?什么是托管代码?什么是强类型系统?什么是装箱和拆箱?什么是重载?CTSCLS 和CLR分别作何解释?答:应用程序域:就是为安全性,可靠性,隔离性,和版本控制,及卸载程序提供的隔离边界它通常由运行库宿主创建,应用程序域提供了一个更安全,用途更广的处理单元托管代码:使用CLR编译语言编辑器开发编写的代码就叫托管代码装箱和拆箱:是把值类型转换为引用类型的过程,是隐式的,相反的过程就是拆箱,是显式的CTS是公共类型系统,CLS是公共语言规范,CLR公共语言运行库强类型系统:每个变量和对象都必须具有申明类型24. 值类型和引用类型的区别?答:值类型的值是存放在堆栈中的,改变其值,不改变变量原有的值,而引用类型的值是存放在栈中的,其引用的地址是存放在堆栈中的,改变其值也就改变了变量原有的值值类型不允许包含null值,然而可空类型可以将null赋值给值类型l答:windows,forms,passport26. 解释一下UDDIWSDL的意义及其作用?答:UDDI是统一描述集成协议,是一套基于Web的,分布式的,为WEB服务提供的信息注册的实现标准规范,同时为也是为企业本身提供的Web服务注册以让别的企业能够发现并访问的协议标准提供了基于标准的规范,用于描述和发现服务,还提供了一组基于因特网的实现WSDL这是一个基于XML的描述WEB服务的接口答:是简单访问协议是在分布式环境中,交换信息并实现远程调用的协议是一个基于XML的协议使用SOAP,可以不考虑任何传输协议,但通常还是HTTP协议,可以允许任何类型的对象或代码,在任何平台上,以任一种语言相互通信它是一种轻量级协议答:vs2003,vs2005里边都有发表机制,vs2003可以发布然后在复制部署Vs2005可以直接部署到对应的位置答:.NET中的垃圾回收机制是引用程序对内存的回收和释放当每次用new关键字创建一个对象时,运行库都要从托管堆中为其分配内存,因为空间是有限的,最终垃圾回收机制是要回收不用的内存的已释放内存,重新使用30. 面向对象的三大基本原则?答:封装,继承,多态31. 在.NET中所有类的基类是?答:object32. 能用foreach遍历访问的对象需要实现?答:需要实现IEnumerable接口和GetEnumerator ()方法33. Heap与stack的差别?答:Heap是堆,空间是由手动操作分配和释放的,它的存储区很大的自由存储区Stack是栈,是由是操作系统自动分配和释放的,栈上的空间是有限的程序在编译期间变量和函数分配内存都是在栈上进行的,且在运行时函数调用时的参数的传递也是在栈上进行的.Net面试题及答案1:a=10,b=15,在不用第三方变量的前提下,把a,b的值互换a=a+b;b=a-b;a=(a-b)/2;b=b+a2:已知数组int[] max={6,5,2,9,7,4,0};用快速排序算法按降序对其进行排列,并返回数组 using System;namespace VcQuickSort{/// <summary>/// ClassQuickSort快速排序。

dotNet高级软件工程师面试题

dotNet高级软件工程师面试题

dotNet高级软件工程师面试题1.有表A,结构如下:A: p_ID p_Num s_id1 10 011 12 022 8 013 11 013 8 03其中:p_ID为产品ID,p_Num为产品库存量,s_id为仓库ID。

请用SQL语句实现将上表中的数据合并,合并后的数据为:p_ID s1_id s2_id s3_id1 10 12 02 8 0 03 11 0 8其中:s1_id为仓库1的库存量,s2_id为仓库2的库存量,s3_id为仓库3的库存量。

如果该产品在某仓库中无库存量,那么就是0代替。

2.叙述Page页面的生命周期。

(即写出Page几个主要的事件运行顺序)3.有ab.aspx页面,在codebehind里动态在页面里创建一checkbox控件,创建后用户在页面选中该checkbox,在codebehind里如何取该checkbox的值?(即是选中还是未选中状态)4.Session跟Cookie有什么关系?假如IE禁止使用cookie,那Session还有用吗?5.c#中的关键字this,在class中和在struck中如何使用?6.如何理解装箱、坼箱操作?运用此操作时对系统性能有什么影响? 7.XML中的XmlDocument 跟 XmlReader有什么区别?8.接口跟抽象有什么异同?你在平时项目设计过程中何时使用接口? 何时使用抽象类?9. public void Check(string s){.....}public void Check(ref string s){.....}Public void Check(out string s){.....}上面的三个方法传入的参数有什么不同?另外请说明string是什么数据类型(值类型?引用类型?)。

10. 如图,如何找出他们的交叉区域。

请写出你的实现思路。

|-------|| || || |--|----|| | || | | ||----|--| | |-------|。

C#软件工程师面试笔试题(.net)(含答案)

C#软件工程师面试笔试题(.net)(含答案)

软件工程师笔试题(.net)笔试时间:40分钟答题人:__________ 开始时间:__________ 注:请将答案答于答题纸上,题目做擅长的即可,不必全部答完1.值类型和引用类型分别有什么区别?System.ValueType是一个什么类型?答:值类型包括简单类型、结构体类型和枚举类型,引用类型包括自定义类、数组、接口、委托等。

●赋值方式:将一个值类型变量赋给另一个值类型变量时,将复制包含的值。

这与引用类型变量的赋值不同,引用类型变量的赋值只复制对象的引用(即内存地址,类似C++中的指针),而不复制对象本身。

●继承:值类型不可能派生出新的类型,所有的值类型均隐式派生自System.ValueType。

但与引用类型相同的是,结构也可以实现接口。

●null:与引用类型不同,值类型不可能包含 null 值。

然而,可空类型功能允许将 null 赋给值类型。

●每种值类型均有一个隐式的默认构造函数来初始化该类型的默认值,值类型初始会默认为0,引用类型默认为null。

●值类型存储在栈中,引用类型存储在托管堆中。

System.ValueType是所有值类型的基类,ValueType是类类型,但是他的子类却是值类型,这是因为CLR对他的子类经过了特殊的处理.CLR若判断某类继承自ValueType,那么会在内存分配方面使它具有值类型的特征(例如直接分配在栈上)2.System.String类型是引用还是值类型?其最大特点是?在字符串连加处理中,最好采用什么方式,理由是什么?答:string是一个引用类型,因为string太常用,为了提高性能及开发方便,对string做了特殊处理,给予了一些专用特性。

有两个重要的特性:恒定性与驻留性。

●恒定性:字符串是不可变的,字符串一经创建,就不会改变,任何改变都会产生新的字符串。

驻留性:相同的字符串在内存(堆)中只分配一次,第二次申请字符串时,发现已经有该字符串时,直接返回已有字符串的地址;少量字符串连接,使用String.Concat,大量字符串使用StringBuilder,因为StringBuilder减少了内存的分配,性能更好,如果string的话会创建大量字符串对象3.请描述一下委托?答:委托类似于 C或 C++中的函数指针,允许将方法作为参数进行传递。

DoNet面试题面试相关DotNet面试题_4

DoNet面试题面试相关DotNet面试题_4

.Net 面试题(四)常用类和接口1.是否存在不继承自System.Object类型的类答:通过运用ILasm.exe的noautoinherit开关,可以生成不从System.Object继承的类型,这种类型是不安全的类型,也不建议使用。

但是,这样机制的存在,促使程序员在编写代码时不能随意地把任何对象默认地看成System.Object的子类类型。

2.在System.Object中定义的三个比较方法有何异同答:静态方法ReferenceEquals实现了引用比较。

静态Equals方法实现了比较高效地调用实例Equals方法的功能。

实例Equals方法是一个虚方法,默认的实现是引用比较,类型可以根据需要重写实例Equals方法。

值类型的基类ValueType重写了Equals方法,实现了内容的比较。

3.如何重写GetHashCode方法答:Object中GetHashCode的算法保证了同一对象返回同一HashCode,而不同对象则返回不同的HashCode,但对于值类型等视内容相等的对象为相等对象的类型时,默认的GetHashCode算法并不正确。

4.DateTime如何存储时间答:DateTime结果内部存储一个64位长的整数,其中的低62位用来代码时间,它表示从0001年1月1日0时0分0秒开始到表示的时间经过百毫微秒数。

5.如何在DateTime对象和字符串对象之间进行转换答:DateTime可通过ToString方法来格式化输出到字符串,而相反地,Parse和Parse方法则用来从一个字符串中得到信息并构造一个DateTime对象。

6.什么是UTC时间,如何转换到UTC时间答:UTC是格林威治标准时间(GMT),它是在0度经度测量得到的时间。

通过ToUniversalTime和ToLocal方法可以在本地时间和UTC时间之间进行转换。

两个方法在转换时会相应地设置保存时间的64位整数的高两位标志,并且转换的算法考虑了夏令时。

.NET软件工程师面试题(第二轮)

.NET软件工程师面试题(第二轮)

1.C#中的委托是什么?事件是不是一种委托?2.简述 private、 protected、 public、internal 修饰符的访问权限。

3.override与重载的区别4.什么是装箱和拆箱?中读写数据库需要用到那些类?他们的作用?6.列举页面之间传递值的几种方式。

7.请详述在dotnet中类(class)与结构(struct)的异同?8.写出一条Sql语句:取出表A中第31到第40记录(SQLServer,以自动增长的ID作为主键,注意:ID可能不是连续的。

9.面向对象的语言具有________性、_________性、________性,________最能体现面向对象的思想。

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

11.接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类(concrete class)?12.如何处理几十万条并发数据?13.成员变量和成员函数前加static的作用?14.请说明在.net中常用的几种页面间传递参数的方法,并说出他们的优点。

15.c#中的三元运算符是?16..当整数a赋值给一个object对象时,整数a将会被?17.类成员有_____种可访问形式?分别是?18.用sealed修饰的类有什么特点?19.在中所有的自定义用户控件都必须继承自________?的错误处理机制是什么?21.在.net中,Appplication.Exit() 还是 Form.Close()有什么不同?22.在C#中,string str = null 与 string str = "" 请尽量使用文字或图象说明其中的区别。

23.引用类型和值类型的区别24.属性(get{}set{})和public字段的区别是什么?25.C#中所有对象共同的基类(父类)是什么?参考《就业指导手册》。

Net Framework框架(dotnet)面试题与答案汇编

Net Framework框架(dotnet)面试题与答案汇编

一、简答题:1、您在什么情况下会用到虚方法?它与接口有什么不同?答:实现多态时会用到虚方法,虚方法在基类中实现在子类中重写,接口不能实现,在继承接口的类中实现。

2、Override与重载有什么区别?答:override 与重载的区别。

重载是方法的名称相同。

参数或参数类型不同,进行多次重载以适应不同的需要 Override 是进行基类中函数的重写。

为了适应需要。

3、值类型与引用类型有什么区别?答:值类型与引用类型的区别在于它们在内存中的存储方式,值类型只将值存放在内存中,这些值类型数据都存储在堆栈中。

而引用类型的内存单元中只存放内存堆中对象的地址,而对象本身存放在内存堆中。

如果引用类型的值是null,则表示未引用任何对象。

4、怎样理解静态变量?答:所有实例公用一个的变量5、向服务器发送请求有几种方式?答:get,post。

get一般为链接方式,post一般为按钮方式。

6、DataReader与Dataset有什么区别?答:一个是只能向前的只读游标,一个是内存中的表。

7、如果在一个B/S结构的系统中需要传递变量值,但是又不能使用Session、Cookie、Application,您有几种方法进行处理?答: input type="" url 数据库8、用.net做B/S结构的系统,您是用几层结构来开发,每一层之间的关系以及为什么要这样分层?答:一般为3层数据访问层,业务层,表示层。

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

业务层一般分为二层,业务表观层实现与表示层的沟通,业务规则层实现用户密码的安全等.表示层为了与用户交互例如用户添加表单。

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

缺点:增加成本。

9、软件开发过程一般有几个阶段?每个阶段的作用?答:需求分析,架构设计,代码编写,QA,部署10、微软推出了一系列的Application Block,请举出您所知道的Application Block并说明其作用?答:Updater Application Block:Updater Application Block是一个.NET Framework组件,用于通过网络从服务器自动检测、下载和部署客户端应用程序。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

.NET软件工程师面试试题一、选择题。

(每题2分,共35题)1、C#中声明一个命名空间的关键字是( )。

spaceplaceingD.as2、如果不带修饰符,C#中类成员被默认声明成( )。

A.publicB.protectedC.privateD.static3、定义如下枚举enum monthes{ January , February=3 , March=5 , April=7 , May , June }则此时January 和May的值分别为( )。

A.1,8B.0,9C.0,8D.1,94、下面是几条定义初始化二维数组的语句,其中正确的是( )。

A.int array2[][] = new int[3,2];B.int array2[,] = new int[3,2];C.int[][] array2 = new int[3,2];D.int[,] array2 = new int[3,2];5、用户类若想支持foreach语句需要实现的接口是( )。

A.IEnumerableB.IEnumeratorC.ICollectionD.IList6、以下哪些可以作为接口成员?( )。

(选择三项)A.方法和属性B.字段C.事件D.索引器E.构造函数和析构函数7、声明一个委托public delegate int myCallBack(int x); 则用该委托产生的回调方法的原型应该是( )。

A.void myCallBack(int x)B.int receive(int num)C.string receive(int x)D.不确定的8、下面哪个选项不能在web.config文件中配置的( )。

A.连接字符串B.身份验证C.网站导航D.程序出现错误时,定向到的错误提示页面9、支持三种验证方式,不属于其中的是( )。

A.passportB.SqlServer身份C.WindowsD.Forms10、在中,下列关于session对象的说法正确的是( )。

A.用户每次打开一个web页面,将会创建一个session对象B.用户关闭客户端web页面后,session对象将立即消失C.应用程序退出后,session对象的值才能消失D.每个用户的Session对象不能被其他用户访问11、在开发三层结构的网站时,与数据表对应的实体类应写在( )层。

A.表示层B.业务逻辑层C.数据访问层D.模型层12、某个论坛上有这样的规定:在线时长不够100小时不能发贴,相关的代码应该写在( )层。

A.表示层B.业务逻辑层C.数据访问层D.模型层13、对于存储过程的调用,应该出现在( )层。

A.表示层B.业务逻辑层C.数据访问层D.模型层14、下列说法正确的是( )。

(选择两项)A.数据访问层要添加模型层的引用B.业务逻辑层要添加数据访问层的引用C.表示层要添加数据访问层业务逻辑层和模型层的引用D.模型层要添加数据访问层的引用15、根据你的理解,你认为第三控件与用户控件的主要区别是( )。

A.第三方控件是编译后的代码,后缀为dll,只要应用程序引用进来,就可以使用,而用户控件是页面文件,属于非编译代码,只限于在当前应用程序中使用B.用户控件比第三方控件更灵活,可以在应用程序中多个地方使用C.用户控件出现在工具箱中,而第三方控件不会出现在工具箱中D.用户控件比第三方控件的执行效率要高一些16、在Schema的约束条件中,下列描述错误的是( )。

A.enumeration:枚举类型,提供了一个可选择的列表B.maxExclusive:指定数据的最大值(小于等于)C.minExclusive:指定最小值(大于)D.minInclusive:指定最小值(大于等于)17、对下面的XML文档的描述,正确的是( )。

(选择两项)<Sample><Start>Hello Xml</Start><End>GoodBye HTML</End></Sample>"A."Start"是一个元素节点,它没有子节点B."End"对象有兄弟节点"Start"C."Smaple"是一个元素节点,也是根元素D.Hello XMl不是文本节点18、在Schema中用于定义元素和属性的标记是( )。

A.<element>和<attribute>B.<simpleType>和<complexType>C.<simpleContent>和<complexContent>D.<type>和<group>19、在XML Schema中,用于限制元素出现次数的element的属性有( )。

(选择两项)A.maxExclusiveB.minExclusiveC.minOccursD.maxOccurs20、以下说法错误的是( )。

A.SqlCommand类属于System.Data命名空间。

B.SqlCommand对象可用于执行SQL语句,也可用于调用存储过程。

C.SqlCommand对象的CommandType属性的默认值为:mandType.Text。

D.SqlCommand类的构造函数可接收命令文本和连接对象作为参数。

21、以下说法错误的是( )。

A.命令对象的ExecuteNonQuery方法一般用于执行INSERT、DELETE、UPDA TE语句。

B.命令对象的ExecuteNonQuery方法的返回类型为void。

C.命令对象的ExecuteScalar方法用于返回查询结果集的首行首列的值。

D.命令对象的ExecuteScalar方法的返回类型为System.Object。

22、以下说法错误的是( )。

mand命令对象的ExecuteReader方法返回DataReader数据读取器对象mand命令对象的ExecuteReader方法支持mandBehavior.CloseConnection参数,这样在它返回的数据读取器对象被关闭时,与它关联的连接对象将自动关闭。

C.DataReader数据读取器对象的Next方法用于读取下一条记录。

D.DataReader数据读取器对象的HasRows属性用于指示查询结果集是否包含一行或多行。

23、以下说法正确的是( )。

A.数据读取器的Fields属性表示查询结果集的所有字段,它包含Count属性表示字段的数量。

B.数据读取器的GetValues方法返回当前记录的所有字段值,返回类型为object 数组。

C.数据读取器的GetBool方法返回特定字段的布尔值。

D.数据读取器的GetSingle方法返回特定字段的单精度浮点数值。

24、以下说法错误的是( )。

A.面向SQL Server的数据提供程序中,参数对象必须以?问号作为参数命名前缀。

B.System.Data.ParameterDirection枚举用于表示参数对象的方向,默认值为Input即输入参数。

mand命令对象的Parameters集合的AddWithValue方法用于向命令文本中的参数占位数传递具体的参数值。

mand命令对象的Parameters集合的Add方法用于向命令对象添加一个已实例化的参数对象。

25、mon命令空间中包含了与特定数据源无关的,但由各种数据提供程序共享的抽象基类,以下( )不在此列。

A.DbDataRederB.DbCommandBuilderC.SqlExceptionD.DbParameterCollection26、为单元格标签设置( )属性可实现跨行合并,设置( )属性可实现跨列合并。

A.rowCells colCellsB.cellRow cellColC.rows colsD.rowspan colspan27、要显示乘314路公交车从汽车西站到五一广场途中经过的公交站点,并在每个公交站点名称前用数字表示途经的先后顺序,应使用( )标签和它内部的( )标签。

A.<li></li> <list></list>B.<list></list> <item></item>C.<ul></ul> <li></li>D.<ol></ol> <li></li>28、以下哪一项全部都能由<input />标签创建。

( )A.文本框列表框复选框密码框B.复选框多行文本框提交按钮C.自定义命令按钮文件域隐藏域D.密码框提交按钮图片按钮列表框29、以下哪一项全部都可作为<input />标签type属性的值。

( )A.text password radio checkboxB.file hiddent image selectC.submit reset button optionD.textarea label fieldset30、要将包含密码数据的登录表单提交到Web服务器中处理,应为<form></form>的( D )属性的值设置表单处理程序的地址,并应将表单的( )属性的值设置为( )。

A.post action methodB.action method getC.method post actionD.action method post31、要为框架页面内的某个超链接在另一个框架内打开显示,应首先为另一个框架使用( )属性命名,然后在超链接中设置( )属性的值为此框架的名称。

A.target forB.id target src target32、可以为框架标签设置( )属性以控制它内部的滚动条显示的方式,这个属性的默认值为( )。

A.scroll autoB.scrolling yesC.autoscroll yesD.scrolling auto33、要将页面中所有的<h1></h1>标签设置为居中20px的字号,应优先使用哪种选择器。

( )A.ID选择器B.伪类选择器C.类选择器D.HTML标签选择器34、假设有多条样式规则由一个独立的样式文件包含,现在有一个网页要使用这个样式文件中的样式规则,应在此网页中使用( )标签链接这个样式文件,并设置此标签的( )属性的值为这个样式文件的地址。

A.link srcB.style hrefC.link hrefD.style src35、要为单元格内部的文字设置颜色,应使用( )样式属性;要去除超链接默认的下划线,应使用( )样式属性,并为其赋值为( )。

相关文档
最新文档