刚毕业1年2年3年工作经验都可用的C面试题及答案(设计模式在后面).pptx

刚毕业1年2年3年工作经验都可用的C面试题及答案(设计模式在后面).pptx

  1. 1、本文档共47页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C#面试题(设计模式在后面) 2. const 和readonly 有什么区别? 答:const 可以用于类的成员常量和局部常量,必须在声明时赋值,之后不可以对常量进行 赋值。而readonly 只能用于类的成员变量不能用于局部变量,在声明时可以不赋值,除了 在构造函数中可以再次赋值外,其它的地方和 const 一样也不能赋值。 5. 接口和抽象类有什么区别?你选择使用接口和抽象类的依据是什么?答 答:区别如下 抽象类可以有抽象成员(无具体实现),也可以有非抽象成员(有具体实现);接 口只有抽象成员。 一个类不能同时继承多个抽象类,一个类可以同时实现多个接口。 如果多个子类中有很多代码是重复的,这时采用抽象类,因为可以将这些代码放到抽象类的 非抽象方法中,这样可以达到代码复用。当实现多个接口时因为抽象类不支持,只能使用接 口。 struct 和 class 有什么区别 答:两者都可以有成员变量、属性、索引器、事件、函数、构造函数,主要区别如下: 区别点 结构 类 类型 值类型 引用类型 成员变量 在声明时不能赋值 可以赋值也可以不赋值 构造函数 可以不写,系统提供默认构造函数,默认构造函数中会将所有成员值设为 0,如 果写了构造函数则构造函数必须有参数,且在构造函数中必须为每一个成员赋值。 可以不 写,系统提供默认构造函数,写了也没有结构中的限制。 析构函数 不能有析构函数 可以有析构函数 继承性 自定义的结构不能从类继承,但可以实现接口,结构都是密封(sealed),不能从结 构继承 类没有限制 try 后面一个 finally,try 中有一个 return,那么 finally 中的代码会不会运行?如果运行, 是在 return 后还是return 前。 答:会运行,并且在return 后运行。 产生一个 int 数组,长度为 100,并向其中随机插入 1-100,并且不能重复。 答:该题解题思路有很多,主要是看运行效率如何,下面提供一种方法。 int[] array = new int[100]; int temp[] = new int[100]; for (int i = 0; i 100; i++) { temp[i]=i+1; };Random rand = new Random(); for (int i = 0; i 100; i++) { int index = rand.Next(100-i-1); array[i] = temp[index]; temp[index]=temp[100-i-1]; } 9. C#中要使一个类支持 foreach 遍历,实现过程怎样? 答:必须实现 IEnumerable,IEnumerator 这两个接口,如下: public class MyList : IEnumerable,IEnumerator { private int position = -1; string[] array = new string[4]; public MyList() { array[0] = a; array[1] = b; array[2] = c; array[3] = d; } #region IEnumerable 成员 //每次使用 foreach 时都会调用它得到一个枚举器 public IEnumerator GetEnumerator() { Reset(); return (this as IEnumerator); } #endregion #region IEnumerator 成员 //遍历时通过这个属性得到值 public object Current { get { return array[position]; } } //访问下一个元素时使用 MoveNext 移动位置;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17;18;19;20;21;22;23;;;如下:;27;28;29;30;31;32;33;简要谈一下您对微软.NET 构架下 remoting 和 webservice 两项技术的理解以及实际中的 应用。 答:WebSevice 使用 HTTP 协议,因此可以穿透防火墙。而 Remoting 使用 TCP/IP,二 进制传送提高效率。 remoting 是.net 中用来跨越 machine, process, appdomain 进行方法调用的技术,对于三层 结构的程序,就可以使用 remoting 技术来构建.它是分布应用的基础技术.相当于以前 的 DCOM;Web Service 是一种构建应用程序的普通模型,并能在所有支持 internet 网通 讯的操作系统上实施。Web Se

您可能关注的文档

文档评论(0)

moxideshijie2012 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档