
习题八 1.当创建一个新类时,该类将从Syst里0jct基类继承下列哪些方法?() A.ToString B.ToObject C.Equals D.GetClassInfonation 正确答案:C 2。面向对象编程中的“维承”的概么是指() A,派生类对象可以不受限制地访问所有的基类对象 B,派生自同一个基类的不同类的对象具有一些共同特征 C,对象之间通过清息进行交互 D,对象的内都细节按隐藏 正确答案:B 3,在定义类时,如果希望类的某个方法能够在派生类中进一步进行改进,以处理不同的派生类的 需要。则应将该方法声明成() A.sealed方法 B.public方法 C.visual方法 D.override方法 正确答案:C 4,类class1,class2,class3的定复如下: abstract class classl{ abstract public void test(); 1 Class class2:class11 public override void test()[ Console.write("class2"):) Class class3:class2 public override void test() Console.write("class3"): 则下列语句的输出是什么?()(提示:从拍象类的线则) classl x=new class30:x testO A.class3 class2 B.class3 C.class2 class3 D.class2 正确答案:B 5,接口ly Interface的定义如下:
习题八 1. 当创建一个新类时,该类将从System.Object 基类继承下列哪些方法?( ) A. ToString B. ToObject C. Equals D. GetClassInfomation 正确答案:AC 2. 面向对象编程中的“继承”的概念是指( ) A.派生类对象可以不受限制地访问所有的基类对象 B.派生自同一个基类的不同类的对象具有一些共同特征 C.对象之间通过消息进行交互 D.对象的内部细节被隐藏 正确答案:B 3. 在定义类时,如果希望类的某个方法能够在派生类中进一步进行改进,以处理不同的派生类的 需要,则应将该方法声明成( )。 A. sealed 方法 B. public 方法 C. visual 方法 D. override 方法 正确答案:C 4. 类class1,class2,class3的定义如下: abstract class class1{ abstract public void test(); } Class class2:class1{ public override void test() { Console.write(“class2”);}} Class class3:class2{ public override void test(){ Console.write(“class3”);}} 则下列语句的输出是什么? ( )(提示:从抽象类的规则) class1 x=new class3();x.test(); A.class3 class2 B.class3 C.class2 class3 D.class2 正确答案:B 5. 接口MyInterface的定义如下:

public interface NyInterface string Name (get: 类C1ass定义如下: class MyClass:MyInterface string Name{et《return"only a test!“:l 则下列语句的编译,运行结果如何?《) MyInterface x=new MyClass(): Console.writeline (x.Name): A.运行正常,输出字符串”only a test!” B,可以编译通过,但运行出现异常 C,编译出错 正确答案:C 6.以下描述情误的是() A类不可以多重继承而接口可以: B抽象类自身可以定义成员而接口不可以: C抽象类和接口都不能被实例化! 几一个类可以有多个基类和多个基接口: 正确答案:D 7,用户类若想支持F©reachi语句需要实现的接口是:() A.IEnunerable B.IEnurerator C.ICollection D.ICollectData 正确答案:A 8.“防问围限定于此程序或那些由它所属的类派生的类型”是对以下哪个员可防问性含义 的正确情述?《) A.public B protected C.internal D.protected internal 正确答案:B 9,接口是一种引用类型,在接口中可以声明(》,但不可以声明公有的城或私有的成员变量: A方法、属性、素引器和事件: B方法、属性信息、属性: C素引器和字段: D.事件和字段:
public interface MyInterface { string Name {get;} } 类MyClass定义如下: class MyClass:MyInterface {string Name {get {return "only a test!";}} } 则下列语句的编译,运行结果如何? ( ) MyInterface x=new MyClass(); Console.writeLine(x.Name); A.运行正常,输出字符串”only a test!” B.可以编译通过,但运行出现异常 C.编译出错 正确答案:C 6. 以下描述错误的是( ) A.类不可以多重继承而接口可以; B.抽象类自身可以定义成员而接口不可以; C.抽象类和接口都不能被实例化; D.一个类可以有多个基类和多个基接口; 正确答案:D 7. 用户类若想支持Foreach语句需要实现的接口是: ( ) A.IEnumerable B.IEnumerator C.ICollection D.ICollectData 正确答案:A 8. “访问范围限定于此程序或那些由它所属的类派生的类型”是对以下哪个成员可访问性含义 的正确描述?( ) A.public B.protected C.internal D.protected internal 正确答案:B 9. 接口是一种引用类型,在接口中可以声明( ),但不可以声明公有的域或私有的成员变量。 A.方法、属性、索引器和事件; B.方法、属性信息、属性; C.索引器和字段; D.事件和字段;

正确答案:A 10.声明一个委托oublic delegate int myCal1Back(intx):则川该委托产生的国调方法的原型 应该是《)。 A.void myCallBack (int x): B.nt receive(int nun) C.string receive(int x): D.不确定的: 正确答案:B 11.以下叙述正确的是:() A接口中可以有虚方法。 B一个类可以实现多个接口. C接口不能核实例化。 D,接口中可以包含已实现的方法。 正确答案:BC 12.以下哪些可以作为接口成员?() L方法 且.属性 C字段 D.事件 E素引器 正确答案:AE 13,对于一个实现了IDis0sab】e接口的类,以下哪些项可以执行与释做成重置丰托管资源相关的 应用程序定义的任务?() A.Close B.Dispose C.Finalize D.using E.Quit 正确答案:ABC 14.以下的代码,试图用来定义一个接口: public interface IFile { int A: int delFile() { A=3: 1 void disFile(): 关于以上的代到。以下播述情说的是(), A以上的代码中存在的错误包括:不能在接口中定文变量,所以tA代码行将出现错误: R以上的代码中存在的错误包括:接口方法de]Fi1e是不允许实观的,所以不能编写具体的实现函数: C代码oid disFile0:声明无错误,接口可以没有赵网值: D代码oid disFile0:应该编写为void disFile0}: 正确答案:AD 15.编程题:用C#编写一个程序,使用Aninal和m脑l再个类来说明一般动物和哺乳动物的雅承美系
正确答案:A 10. 声明一个委托public delegate int myCallBack(int x); 则用该委托产生的回调方法的原型 应该是( )。 A.void myCallBack(int x) ; B.nt receive(int num) ; C.string receive(int x) ; D.不确定的; 正确答案:B 11. 以下叙述正确的是:( ) A. 接口中可以有虚方法。 B. 一个类可以实现多个接口。 C. 接口不能被实例化。 D. 接口中可以包含已实现的方法。 正确答案:BC 12. 以下哪些可以作为接口成员?( ) A.方法 B.属性 C.字段 D.事件 E.索引器 正确答案:ABDE 13. 对于一个实现了IDisposable接口的类,以下哪些项可以执行与释放或重置非托管资源相关的 应用程序定义的任务?( ) A.Close B.Dispose C.Finalize D.using E.Quit 正确答案:ABC 14. 以下的C#代码,试图用来定义一个接口: public interface IFile { int A; int delFile() { A = 3; } void disFile(); } 关于以上的代码,以下描述错误的是( )。 A.以上的代码中存在的错误包括:不能在接口中定义变量,所以 int A 代码行将出现错误; B.以上的代码中存在的错误包括:接口方法 delFile 是不允许实现的,所以不能编写具体的实现函数; C.代码 void disFile();声明无错误,接口可以没有返回值; D.代码 void disFile();应该编写为 void disFile(){}; 正确答案:ABD 15.编程题:用 C#编写一个程序,使用 Animal 和 Mammal 两个类来说明一般动物和哺乳动物的继承关系

如国l具有名称、所属门类等属性,需要提供方法实现以接收和显示这些属性的值。■l类具有代表哺 乳动物习性的属性,这些属性表明哺乳动物与他类型动物的区别。同样地,需要提供方法实现以接收和显 示这些属性的值
Animal 具有名称、所属门类等属性,需要提供方法实现以接收和显示这些属性的值。Mammal 类具有代表哺 乳动物习性的属性,这些属性表明哺乳动物与其他类型动物的区别。同样地,需要提供方法实现以接收和显 示这些属性的值