NET程序员面试秘笈 - (EPUB全文下载)

文件大小:0.46 mb。
文件格式:epub 格式。
书籍内容:

.NET程序员面试秘笈
第1章 .NET概念题
第2章 .NET编程语言基础题
第3章 基类、接口和泛型
第4章 .NET高级特性
第5章 Windows窗体编程
第6章 ADO.NET编程
第7章 SQL查询及LINQ
第8章 ASP.NET程序开发1
第9章 ASP.NET程序开发2
第10章 Web Service和远程处理
第11章 算法和趣味题
版权
第1章 .NET概念题
本章内容包含面向对象程序设计和.NET的基础概念题,由于这部分题目涉及的范围比较广,因此在很多公司的面试题中占了比较大的比重。很多.NET程序员在编写代码时非常熟练,但往往缺乏对基础知识的深刻理解,从而导致面试失败。这类知识是程序设计的基础,如果不加以重视,程序编写就没有创造性,只能学一步,做一步。
面向对象编程是当前流行的编程方式,被大多数高级语言支持。.NET程序同样是基于面向对象的设计,只有深刻理解面向对象的编程理念,才可以开发出结构良好的、更易维护的.NET程序。
说明:本书采用C#语言编写.NET程序示例。
面试题1 简述面向对象的程序设计思想
【考点】面向对象程序设计思想概念的理解,面向对象设计的应用范围,用C#实现面向对象设计方法。
【出现频率】★★★★☆
【解答】
面向对象是程序开发的一种机制,其特征为封装、继承、多态及抽象。以面向对象的方式编写程序时,需要将复杂的项目抽象为多个对象互相协作的模型;然后编写类型的结构,声明或实现类型的成员,即描述对象的特征和行为。在项目中编写不同的类型完成不同的功能,最后在程序中通过类的实例处理实际的问题。
说明:此处类型不仅仅指类,还可能包括接口、结构等。
【分析】
面向对象编程简称为OOP,其“对象”的含义类似于生活中的“物体”。相对于以前的编程方式,面向对象编程更注重于人的思维方式,可极大地提高程序的开发效率。面向对象编程将程序看作多个互相分离的功能模块,各个模块之间分工合作,并且有着极低的耦合度。面向对象编程中最重要的概念是类(即class),类是描述各个功能模块的模板,而程序中工作的模块实体被称为对象(即object)。
类和对象的概念好比动物学的分类,猫科动物就是一个类,老虎也是一个类,并且属于猫科动物类,动物园中某只老虎的实体则是一个对象。老虎类拥有猫科动物类的所有特征和行为,但有自己独特的特征和行为。而某只老虎符合老虎类特征描述和行为定义,可能还有部分独特的特征。所以类可以继承另一个类,如老虎类继承了猫科动物类。类是产生对象的一个模板,对象拥有类的一切特征和行为。关于类和对象的基本关系如图1.1所示。
图1.1 类和对象示意图
面向对象编程的重点是类的设计,面试者应能熟练地编写简单的类并创建对象,展示基本的OOP语法。以图1.1为例,编写图中相应的类,并通过虎类创建一只体重为100kg、长度为 200cm 的老虎对象。新建一个.cs 文件,并命名为 OopTest.cs,编写代码如程序1.1所示。
程序1.1 老虎对象的创建:OopTest.cs
01 using System;
02  class OopTest
03  {
04  static void Main(String[] args)
05  {
06   Console.WriteLine("请输入老虎对象的体重和长度(逗号分隔的整数):");
07   string input= Console.ReadLine();
08   int pos = input.IndexOf(",");
09   string w = input.Substring(0, pos);
10   string l = input.Substring(pos + 1);
11   Tiger chinatiger = new Tiger(w, l);
12   Console.WriteLine("老虎已经创建完成!");
13   Console.WriteLine("这只老虎的重量是:"+chinatiger.weight+"kg");
14   Console.WriteLine("这只老虎的长度是:" + chinatiger.length + "cm");
15   Console.WriteLine("老虎的特征是:" + Tiger.msg);
16   Console.WriteLine("老虎一般生存在:" + Tiger.habitat );
17   Console.WriteLine("老虎像猫吗?" + Tiger.cat());
18  }
19  }
20  class Mammal         //哺乳动物类名称
21  {
22  protected static bool viviparous = true; //有胎生的特征
23  protected static bool Feeding = true;  //有喂养的特征
24  }
25  class Felid : Mammal       //猫科动物类名称(继承于哺乳动物类)
26  {
27  protected static bool catlike = true;  //类似猫的特征
28  protected static bool sensitivity = true; //有敏感的特征
29  }
30  class Tiger : Felid       //虎类名称(继承于猫科动物类)
31  {
32   //有各种特征
33  internal static string msg = "凶猛、会游泳、会爬树,有漂亮的花纹,被称为“兽中之王”。";
34  internal static string habitat = "森林"; //栖息地在森林
35  internal string weight;      //体重
36  internal string length;     ............

以上为书籍内容预览,如需阅读全文内容请下载EPUB源文件,祝您阅读愉快。

版权声明:书云(openelib.org)是世界上最大的在线非盈利图书馆之一,致力于让每个人都能便捷地了解我们的文明。我们尊重著作者的知识产权,如您认为书云侵犯了您的合法权益,请参考版权保护声明,通过邮件openelib@outlook.com联系我们,我们将及时处理您的合理请求。 数研咨询 流芳阁 研报之家 AI应用导航 研报之家
书云 Open E-Library » NET程序员面试秘笈 - (EPUB全文下载)