c#oop阶段小测试笔试题

  • 格式:doc
  • 大小:48.50 KB
  • 文档页数:7

C# OOP 内测试卷(答案请写在记事本文件中:笔试答案.txt)一选择题(2’X60=120’)1..Net框架结构的核心组件是()A.公共语言运行时B.支持跨语言开发C.框架类库D.MSIL2.以下哪个不是CLR提供的()功能A.代码托管B.CTSC.CLSD.C#编译成MSIL3.()保证我们在.Net开发中不同的语言类型之间互相兼容A.CTSB.CLSC.JIT编译器D.MSIL4.想使用WebClient类进行下载操作,要引用( )命名空间A.B.C.5..NET框架将()定义为一组规则,所有的.NET语言都应该遵循这个规则,这样才能创建与其他语言互操作性的应用程序。

A.CTSB.CLSC.MSILD.CLR6.在.NET中,下面对.NET Framework理解错误的是()框架是运行在操作系统之上的框架支持跨语言开发,入C#、等C.CTS也叫公共语言运行时,它是.NET运行的基础D.为实现跨语言开发和跨平台的战略目标,.NET所有编写的应用程序都是编译成微软中间语言JIT,再由编译器转成机器代码7.在C#中,下面数据类型是值类型的是()A.boolB.stringC.enumD.Array8.关于结构说法正确的是()A.结构和类一样是引用类型B.定义一个结构对象必须用new关键字C.定义结构时可以给字段赋初始值D.结构里可以有属性和方法9.关于值类型和引用类型,下列说法正确的是A.值类型变量存储的是变量所包含的值B.引用类型变量是指向他要存储的值C.值类型转引用类型称为拆箱D.引用类型转值类型称为装箱10.关于类的静态成员说法正确的是A.静态成员可以由类的对象来访问B.静态方法中不能声明类实例C.静态方法中可以直接调用实例方法D.定义静态成员关键字是static11.在C#中,访问修饰符控制程序对类成员的访问,如果在类中定义一个成员不写访问修饰符,则默认是()A.publicB.privateC.protectedD.以上都不是12.在进行程序开发过程中,有时需要使用类图说明类与类之间的关系,在类图中使用()符号表示公有成员A.+B.-C.*D.#13.在C#程序开发中,我们会大量使用类和对象,其使用方法不包括()A.将类实例化为对象B.将对象实例化成类C.通过类访问静态属性或方法D.通过对象访问静态属性或方法14.在C#中定义泛型集合Dictionary<string,Student> students = newDictionary<string,Student>()。

下面集合操作代码正确的是()A.Student stu=students[“Jimmy”]B.(“Jimmy”)C.(4)D.foreach(Student stu in {}15.下面关于List<string> list = new List<string>()的操作代码错误的是()A.(0)B.(“王五”)C.string name = list[0]D.string name = list[“李四”]16.关于List<T>,下列说法错误的是()A.List<T>获取元素时需要类型转换B.List<T>是通过索引访问集合中的元素的C.List<T>可以根据索引删除元素,也可以根据元素名称删除D.定义一个List<T>需要实例化17.在C#中,关于List<T>和Dictionary<K,V>的说法,正确的是()A.List<T>和Dictionary<K,V>都有RemoveAt方法B.List<T>和Dictionary<K,V>都有count属性C.获取元素时,List<T>需要类型转换,Dictionary<K,V>不需要D.List<T>通过索引访问集合元素,Dictionary<K,V>通过key访问集合元素18.关于集合说法错误的是()A.ArrayList只能通过索引来访问和删除值B.Hashtable可以直接通过键名来获取值C.使用List<T>添加、读取元素时不需要拆箱和装箱,这一点和ArrayList相同D.使用Dictionary<TK,TV>可以通过key获取value,这一点上和Hashtable相同19.C#中提供了一种集合类型哈希表(Hashtable),哈希表的数据时通过键(key)和()来组织的A.项(Item)B.记录(Record)C.表(table)D.值(Value)20.在C#中,以下使用键值对存储数据的是()A.ArrayListB.ArrayC.字符型数组D.HashTable21.在C#中,方法重载主要有两种,包括()和参数个数不同的重载A.参数类型不同B.返回值类型不同C.方法名称不同D.参数名称不同22.在C#程序中,定义如下方法,下面选项中()不是该方法的重载Main象类只能作为基类使用B.抽象类不能定义对象C.抽象类可以实例对象D.可以实现多态23.面向对象编程中,子类继承父类,下列说法错误的是()A.子类不能再派生子类B.子类和父类符合is-a关系,子类is a 父类C.一个子类不能够继承多个父类D.子类继承父类,也可以说父类派生一个子类24.关于抽象类的说法错误的是()A.抽象类不能被实例化B.抽象方法只作声明,而不包含实现,可以看成是没有实现体的虚方法C.具体派生类必须覆盖基类的抽象方法D.抽象派生类必须覆盖基类的抽象方法25.在C#语言开发程序中,以下关于简单工程设计模式的描述中错误的是()A.简单工厂设计模式中,创建对象的方法返回类型可以为任意子类B.简单工厂模式方便维护,可以实现代码复用C.使用简单工厂设计模式可以在调用者不知道对象属于哪个子类的情况下,创建不同的对象D.简答工厂模式创建对象的方法返回类型为父类26.下面关于设计模式说法错误的是()A.软件开发中对于某种需求的一种经验的总结B.设计模式可以根据需要随意使用C.设计模式的应用以需求为基础D.设计模式的使用会带来好处但也有一些代价\27.关于简单工厂说法错误的是( )A.使用简单工厂时,必须先实例化工厂类B.使用简单工厂设计模式,只需要知道产品的父类和工厂C.简单工厂实现了程序的复用D.简单工厂封装了对象的创建方法28.下列关于单例模式说法正确的是()A.实现单例的类不能再该类的外部实例化B.实现单例的类可以有公有构造函数C.实现单例的类都用静态方法返回类的实例D.实现了单例的窗体类需要再窗体关闭时将窗体类的实例设置为null 29.在如下所示的Sample类中,共有()个构造方法A.4B.3C.2D.130.以下哪些选项是实现单例模式所必须的()A.构造函数私有化B.构造函数公有化C.不用提供任何构造函数D.构造函数必须重载31.下面关于XML描述错误的是()A.XML是可扩展标记性语言,她主要用于描述数据B.Xml文件的节点是不区分大小写的C.Xml文件的节点是自由可扩展的D.Xml文件的节点都是成对出现的32.下列关于如何取得xml文件某个节点内容的描述正确的是( )A.通过XmlDocumnet的InnerText属性B.通过XmlDocumnet的Name属性C.通过XmlNode的Name属性D.通过XmlNode的 InnerText属性33.下面关于TreeView说法错误的是()A.TreeNode的属性Level从1开始B.TreeView的属性SelectedNode可以获取当前选中的节点C.如果TreeNode的父节点为null,则它的level的属性必为0D.TreeView的Nodes属性是一个存储TreeNode的数组34.如果TreeView treeView1=new TreeView( ),则根节点”)返回的是一个( )类型的值A.TreeNodeB.intC.stringD.bool35.下面哪个软件不能编辑XML文件的A.记事本B. Vs2010C. WORDD.PowerPoint36.Xml是什么()A.一种标准泛用标记语言B.一种扩展性标记语言C.一种超文本标记语言D.一种层叠样式表单37.在C#中,检查磁盘上某个文件是否存在,使用File类的()方法A.Exists()B.Move()C.Delete()D.Copy()38.在C#中,以下关于文件处理描述错误的是()A.要对文件实现读写,要引用命名空间B.string filePath = @“d:\”;StreamWriter sw = new StreamWriter(filePath);FileStream fs = new FileStream(…)3’3’8’8’8’30’简述抽象方法与虚方法的区别。

4. 结构与类的异同点5. 静态类与实例类的异同点。