出现频率较高的面试题(c#)

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

    property和attribute汉语都称之为属性。不过property是指类向外提供的数据区域。而attribute则是描述对象在编译时或运行时属性的。这两者是有本质区别的。

2、讲一讲你理解的web service,在dot net framework中,怎么很好的结合xml?(讲概念就行了)

    从表面上看,Web Service就是一个应用程序,它向外界暴露出一个能够通过Web进行调用的API。这就是说,你能够用编程的方法通过Web调用来实现某个功能的应用程序。从深层次上看,Web Service是一种新的Web应用程序分支,它们是自包含、自描述、模块化的应用,可以在网络(通常为Web)中被描述、发布、查找以及通过Web来调用。可扩展的标记语言XML是Web Service平台中表示数据的基本格式。除了易于建立和易于分析外,XML主要的优点在于它既与平台无关,又与厂商无关。XML是由万维网协会(W3C)创建,W3C制定的XML SchemaXSD定义了一套标准的数据类型,并给出了一种语言来扩展这套数据类型。Web Service平台是用XSD来作为数据类型系统的。当你用某种语言如VB.NET或C#来构造一个Web Service时,为了符合Web Service标准,所有你使用的数据类型都必须被转换为XSD类型。如想让它使用在不同平台和不同软件的不同组织间传递,还需要用某种东西将它包装起来。这种东西就是一种协议,如 SOAP。


 3. C#, Java 和 c++的特点,有什么相同的地方,不同的地方,C#分别从c++和java中吸取了他们那些优点?

    C#看起来与Java有着惊人的相似;它包括了诸如单一继承,界面,与Java几乎同样的语法,和编译成中间代码再运行的 过程.但是C#与Java有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成。
微软c#语言定义主 要是从C和C++继承而来的,而且语言中的许多元素也反映了这一点.C#在设计者从C++继承的可选选项方面比Java要广泛一些(比如说 structs),它还增加了自己新的特点(比方说源代码版本定义).

C#从Java继承而来的特点

类:在C#中类的申明与Java很相似。特点看起来与Java相比没有变化.布尔运算:条件表达式的结果是布尔数据类型,布尔数据类型是这种语言中独立的一种数据类型.从布尔类型到其他类型没有 直接的转换过程.布尔常量true和false是C#中的关键字.错误处理:如Java中那样,通过抛出和捕捉异常对象来管理错误处理过程.内存管理:由 底层.NET框架进行自动内存垃圾回收.


C#从C和C++继承的特点

编译:程序直接编译成标准的二进制可执行形式.
结构体:一个C#的结构体与C++的结构体是相似的,因为它能够包含数据申明和方法.但是,不象C++,C#结构体与类是不同的而且不支持继承.但是,与Java相同的是,一个结构体可以实现界面.
预编译:C#中存在预编译指令支持条件编译,警告,错误报告和编译行控制. #error

C#独有的特点
中间代码:微软在用户选择何时MSIL应该编译成机器码的时候是留了很大的余地.微软公司很小心的声称MSIL不是解释性的,而是被编译成了机器码.它也明 白许多--如果不是大多数的话--程序员认为Java程序要不可避免的比C编写的任何东西都要慢.而这种实现方式决定了基于MSIL的程序(指的是用 C#,Visual Basic,"Managed C++"--C++的一个符合CLS的版本--等语言编写的程序)将在性能上超过"解释性的"Java代码.当然,这一点还需要得到事实证明,因为C#和 其他生成MSIL的编译器还没有发布.但是Java JIT编译器的普遍存在使得Java和C#在性能上相对相同.象"C#是编译语言而Java是解释性的,"之类的声明只是商业技巧.Java的中间代码和 MSIL都是中间的汇编形式的语言,它们在运行时或其它的时候被编译成机器代码.
命名空间中的申明:当你创建一个程序的时候,你在一个命名空间里创建了一个或多个类.同在这个命名空间里(在类的外面)你还有可能声明界面,枚举类型和结构体.必须使用using关键字来引用其他命名空间的内容.
基本的数据类型:C#拥有比C,C++或者Java更广泛的数据类型.这些类型是bool, byte, ubyte, short, ushort, int, uint, long, ulong, float, double,和decimal.象Java一样,所有这些类型都有一个固定的大小.又象C和C++一样,每个数据类型都有有符号和无符号两种类型.与 Java相同的是,一个字符变量包含的是一个16位的Unicode字符.C#新的数据类型是decimal数据类型,对于货币数据,它能存放28位10 进制数字.

两个基本类:一个名叫object的类是所有其他类的基类.而一个名叫string的类也象object一样是这个语言的一部分.作为语言的一部分存在意味着编译器有可能使用它--无论何时你在程序中写入一句带引号的字符串,编译器会创建一个string对象来保存它.
参数传递:方法可以被声明接受可变数目的参数.缺省的参数传递方法是对基本数据类型进行值传递.ref关键字可以用来强迫一个变量通过引用传递,这使得一个变量可以接受一个返回值.out关键字也能声明引用传递过程,与ref不同的地方是,它指明这个参数并不需要初始值.
与COM 的集成:C#对Windows程序最大的卖点可能就是它与COM的无缝集成了,COM就是微软的Win32组件技术.实际上,最终有可能在任何.NET语 言里编写COM客户和服务器端.C#编写的类可以子类化一个以存在的COM组件;生成的类也能被作为一个COM组件使用,然后又能使用,比方说, JScript语言子类化它从而得到第三个COM组件.这种现象的结果是导致了一个运行环境的产生,在这个环境里的组件是网络服务,可用用任何.NET语 言子类化.
索引下标:一个索引与属性除了不使用属性名来引用类成员而是用一个方括号中的数字来匿名引用(就象用数组下标一样)以外是相似的.
代理和反馈:一个代理对象包括了访问一个特定对象的特定方法所需的信息.只要把它当成一个聪明的方法指针就行了.代理对象可以被移动到另一个地方,然后可以 通过访问它来对已存在的方法进行类型安全的调用.一个反馈方法是代理的特例.event关键字用在将在事件发生的时候被当成代理调用的方法声明中.


4.C#中的委托是什么?事件是不是一种委托? 委托是一个可以对方法进行引用的类。与其他的类不同,委托类具有一个签名,并且它只能对与其签名匹配的方法进行引用。这样,委托就等效于一个类型安全函数指针或一个回调。事件是一种委托。

 5、ADO.NET相对于ADO等主要有什么改进? ADO以Recordset存储,而ADO.NET则以DataSet表示。Recordset看起来更像单表,如果让Recordset以多表的方式表示就必须在SQL中进行多表连接。反之,DataSet可以是多个表的集合。ADO 的运作是一种在线方式,这意味着不论是浏览或更新数据都必须是实时的。ADO.NET则使用离线方式,在访问数据的时候ADO.NET会利用XML制作数据的一份幅本,ADO.NET的数据库连接也只有在这段时间需要在线。 由于ADO使用COM技术,这就要求所使用的数据类型必须符合COM规范,而ADO.NET基于XML格式,数据类型更为丰富并且不需要再做COM编排导致的数据类型转换,从而提高了整体性能。

6、接口和抽象类有什么区别?你选择使用接口和抽象类的依据是什么? 接口是一个纯粹的抽象类,没有任何实际的东西,只是定义了一个框架,而抽象类里面可以有实际的一个方法,并不要求所有的方法都是抽象的。可以实现一个接口中的所有方法,也可以继承一个抽象的类,然后覆写其中的方法。接口一般只有方法,而没有数据成员或属性。抽象类有方法,也有数据成员或属性,一般情况下,优先考虑用接口,只有当可能要访问到数据成员或属性时,用抽象类。

 7、谈谈final, finally, finalize的区别。 final 修饰符用于指定类不能扩展或者方法或属性不能重写。它将防止其他类通过重写重要的函数来更改该类的行为。带有 final 修饰符的方法可以由派生类中的方法来隐藏或重载。 finally 块用于清除在 try 块中分配的任何资源。控制总是传递给 finally 块,与 try 块的存在方式无关。 finalize允许 Object 在“垃圾回收”回收 Object 之前尝试释放资源并执行其他清理操作。 
 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是面试常见的37个问题,给出自己的答案,全面地观察一下自己。 General question: 1. Tell me about yourself a) 简要介绍你自己。 2. why are you interested in this position? a) 你为什么对这份工作感兴趣? 3. What are your strengths? a) 谈谈你的优势。 4. What is your biggest weakness? a) 谈谈你最大的弱点是什么? 5. Why do you feel you are right for this position? a) 为什么你认为自己适合这个职位? 6. Can you give me the highlights of your resume? a) 谈谈你的简历上有些什么值得特别关注的吗? 7. Why did you choose your major? a) 你为什么选择这个专业? 8. What are your interests? a) 你有哪些兴趣爱好呢? 9. What are your short and long-term goals? a) 你对于短期和长期的目标是什么? 10. Tell me how your friends/family would describe you? a) 如果我向你的朋友或者家人询问对你的评价,你认为他们会怎样说? 11. Using single words, tell me your three greatest strengths and one weakness? a) 用简单的词,描述你的三项最突出的优点和一个缺点。 12. What motivates you to succeed? a) 你争取成功的动力是什么? 13. What qualities do you feel are important to be successful in__(i.e. customer service)? a) 哪些品质在你看来对成功是最重要的? 14. What previous experience has helped you develop these qualities? a) 哪些之前的经历帮助你获得了这些品质? 15. Can you give me an example of teamwork and leadership? a) 你能向我列举一个展现了人的团队活动和领导力的例子吗? 16. What was your greatest challenge and how did you overcome it? a) 你经历过最大的挑战是什么?你如何跨越它的? 17. Why should I hire you over the other candidates I am interviewing? a) 我为什么要从这么多应聘者选择你呢? 18. Do you have any questions? a) 你有一些什么问题吗? 19. What are your compensation expectations? a) 你对于报酬有什么样的期望? Leadership Questions: 20. what was your greatest accomplishment in past time? a) 在过去的日子里,你觉得自己最大的成就是什么? 21. Have you ever been asked to do something unethical? If yes, how did you handle it? a) 曾经有人要求你去做一不道德的事情吗?如果有,你是怎么处理的呢? 22. What do you do if you totally disagree with a request made by your manager? a) 如果你完全不同意你上司的某个要求,你怎么处理? Teamwork Questions: 23. When in a group setting, what is your typical role? a) 你在团队通常的作用是什么? 24. How do you motivate a team to succeed? a) 你怎么激励团队达到成功? 25. Have you been in team situations where not everyone carried their fair share of the workload? If so, how did you handle the situation? a) 如果你所处的团队,并不是每个成员都承担着相同的工作量,你怎样处理这种情况? Problem-Solving Questions: Problem-solving question demonstrate your ability to come up with solutions to difficult situations and your ability to think on your feet. 26. How do you prioritize when you are given too many tasks to accomplish? a) 你怎样在一堆根本做不完的工作任务区分轻重缓急? 27. Why are manholes covers round? a) 为什么下水道的井盖是圆的? Organizational and Planning Questions: Organizational and planning questions demonstrate how you approach your job and how you think. If someone appears disorganized, more likely than not, that candidate will be rejected. 28. Tell me about a goal you set for yourself and how you accomplish it. a) 讲述一件你的经历,你为自己设定了目标,制订了计划,实施计划,达到目标。 29. Do you typically achieve what you set out to do? a) 你总是能实现自己为自己设定的目标吗? Miscellaneous Questions: 30. What de-motivates or discourages you? a) 有哪些因素可能会让你失去动力或信心? 31. Do you work better in teams or by yourself? a) 对于你来说,与团队一起工作和独自干活哪样效率更? 32. How important to you is a positive attitude? a) 积极的态度对你有多重要? 33. What is your definition of success? a) 你怎样定义成功? 34. What was your biggest disappointment during your college life? a) 你大学阶段最大的遗憾是什么? 35. Tell me about the most difficult decision you have had to make. a) 你曾经做过的最难的决定是什么? 36. What is your ideal job? a) 你理想的工作是什么? 37. 到现在为止,你还有应聘别的公司吗?进行得怎样?

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值