欢迎来到天天文库
浏览记录
ID:50531637
大小:93.51 KB
页数:17页
时间:2020-03-10
《C#面向对象编程习题.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、C#面向对象编程-多态1.C#中的方法重写使用关键字()。a)overrideb)overloadc)staticd)inherit2.以下的C#代码,试图用来定义一个接口:publicinterfaceIFile{intA;intdelFile(){A=3;}voiddisFile();}关于以上的代码,以下描述错误的是()。(选择一项)a)以上的代码中存在的错误包括:不能在接口中定义变量,所以intA代码行将出现错误b)以上的代码中存在的错误包括:接口方法delFile是不允许实现的,所以不能编写具体的实现函数c)代码voiddisFile();定义无错误,接口可以没有返回
2、值d)代码voiddisFile();应该编写为voiddisFile(){};3.在C#中,接口与抽象基类的区别在于()。a)抽象基类可以包含非抽象方法,而接口只能包含抽象方法b)抽象基类可以被实例化,而接口不能被实例化c)抽象基类不能被实例化,而接口可以被实例化d)抽象基类就是接口,它们之间无差别4.在开发某图书馆的图书信息管理系统的过程中,开始为教材类图书建立一个TextBook类;现在又增加了杂志类图书,于是需要改变设计,则下面最好的设计应该是()。a)建立一个新的杂志类Journal。b)建立一个新的杂志类Journal,并继承TextBoook类。c)建立一个基类B
3、ook和一个新的杂志类Journal,并让Journal类和TextBoook类都继承于Book类。d)不建立任何类,把杂志图书的某些特殊属性加到TextBoook类中。5.可以使用()关键字重写方法。a)Overrideb)New6.()可以看作类的模具。A.抽象类A.接口B.虚方法7.以下叙述正确的是:()A.接口中可以有虚方法。B.一个类可以实现多个接口。C.接口不能被实例化。D.接口中可以包含已实现的方法。8.下列代码输出为():classFather{publicvoidF(){Console.WriteLine("A.F");}publicvirtualvoidG(
4、){Console.WriteLine("A.G");}}classSon:Father{newpublicvoidF(){Console.WriteLine("B.F");}publicoverridevoidG(){Console.WriteLine("B.G");}}classoverride_new{staticvoidMain(){Sonb=newSon();Fathera=b;a.F();b.F();a.G();b.G();}}A.A.FB.FA.GB.GB.A.FB.FB.GB.GC.A.FA.FB.GB.GD.B.FB.FB.GB.G9.写出程序的输出结果:pu
5、blicclassA{publicvirtualvoidFun1(inti){Console.WriteLine(i);}publicvoidFun2(Aa){a.Fun1(1);Fun1(5);}}publicclassB:A{publicoverridevoidFun1(inti){base.Fun1(i+1);}publicstaticvoidMain(){Bb=newB();Aa=newA();a.Fun2(b);b.Fun2(a);}}10.在C#中,允许多接口继承,从多个接口时,使用“:”后跟继承的接口的名字,多个接口名称之间使用()符号进行分割。(选择一项)a)”
6、.’b)”->”c)”,”d)”::”11.在.NET中,关于组件多态性的陈述,下面除了()都是正确的。(选择一项)a可以通过接口实现多态性b可以通过抽象类实现多态性c多态性不只是重载或重写,而是智能重写d在多态性中,需要调用哪个方法的决定是在设计时做出的12.多态性允许对类的某个方法进行调用而无需考虑该方法所提供的特定实现,例如,可能有名为了Road的类,它调用另一个类的Drive方法,另一个类可能是SportsCar或SmallCar,但二者都提供Drive方法,虽然Drive方法的实现因类的不同而异,但Road类仍可以调用它,并且它提供的结果可由Road类使用和解释。在.
7、NET中,可以由以下的方式来实现组件中多态性,除了()。(选择一项)a)通过接口实现多态性b)通过多个不同的子类从单个基类继承实现多态c)通过抽象类实现多态性d)通过受保护的成员函数来实现多态性13.阅读以下的C#代码:classA{publicabstractvoidprintStr(stringstr){Console.WriteLine(str);}}classB:A{publicoverridevoidprintStr(stringstr){str=str+"(重写的方法)";Con
此文档下载收益归作者所有