第7章--继承和接口设计-习题

第7章--继承和接口设计-习题

ID:39281673

大小:47.35 KB

页数:19页

时间:2019-06-29

第7章--继承和接口设计-习题_第1页
第7章--继承和接口设计-习题_第2页
第7章--继承和接口设计-习题_第3页
第7章--继承和接口设计-习题_第4页
第7章--继承和接口设计-习题_第5页
资源描述:

《第7章--继承和接口设计-习题》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第7章继承和接口设计一.选择题1.在C#中,一个类【】。A)可以继承多个类B)可以实现多个接口C)在一个程序中只能有一个子类D)只能实现一个接口2.【】关键字用于在C#中从派生类中访问基类的成员。A)newB)superC)thisD)base3.在定义类时,若希望类的某个方法能够在派生类中进一步改进,以满足派生类的不同需要,则应将该方法声明为【】。A)newB)publicC)virtualD)override4.在C#中,在派生类中对基类的虚方法进行重写,要求在派生类的声明中使用【】。A)newB)

2、publicC)virtualD)override5.已知类B是由类A继承而来,类A中有一个名为M的非虚方法,现在希望在类B中也定义一个名为M的方法,且两方法的参数个数和类型完全相同,若希望编译时不出现警告信息,则在类B中声明该方法时,应使用【】关键字。A)staticB)newC)overrideD)virtual6.假设类B继承了类A,下列说法错误的是【】。A)类B中的成员可以访问类A中的公有成员B)类B中的成员可以访问类A中的保护成员C)类B中的成员可以访问类A中的私有成员D)类B中的成员可以访问

3、类A中的静态成员7.关于多态,下列说法正确的是【】。A)多态实际上就是重载,它们本质上是以一样的B)多态可以分为编译时多态和运行时多态。前者的特点是在编译时就能确定要调用成员方法的哪个版本,后者则是在程序运行时才能确定要调用成员方法的哪个版本。C)编译时多态是在程序运行时才能确定要调用成员方法的哪个版本,而运行时多态在编译时就能确定要调用成员方法的哪个版本。D)多态和重载是两个完全不同的概念,前者是通过定义虚方法和重写虚方法来实现,后者是通过对同一函数名编写多个不同的实现代码来实现。8.下列关于接口的说

4、法,正确的是【】。A)接口中定义的方法都必须是虚方法B)接口中定义的方法可以编写其实现代码C)继承接口的类可提供被继承接口中部分成员的实现代码D)接口中的所有方法都必须在其派生类中得到实现。9.下列关于虚方法的描述中,正确的是【】。A)虚方法能在程序执行时动态确定要调用的方法,因此比非虚方法更灵活B)在定义虚方法时,基类和派生类的方法定义语句中都要带上virtual修饰符C)在重写基类的虚方法时,为消除隐藏基类成员的警告,需要带上new修饰符D)在重写基类的虚方法时,需要同时带上virtual和over

5、ride修饰符10.在C#中,以下关于抽象类的叙述中错误的是【】。A)抽象类可以包含抽象方法B)含有抽象方法的类一定是抽象类C)抽象类不能被实例化D)抽象类可以是密封类11.在C#中,以下关于抽象类和接口的叙述中正确的是【】。A)抽象类可以包含非抽象方法,而接口不包含任何方法的实现B)抽象类可以被实例化,而接口不能被实例化C)抽象类不能被实例化,而接口可以被实例化D)抽象类能够被继承,而接口不能被继承12.在C#中,以下关于抽象类和接口的叙述中正确的是【】。A)在抽象类中,所有的方法都是抽象方法B)继承

6、自抽象类的子类必须实现其父类(抽象类)中的所有抽象方法C)在接口的定义中可以有方法实现,在抽象类的定义中不能有方法实现D)一个类可以从多个接口继承,也可以从多个抽象类继承13.以下类和接口的区别中正确的是【】。A)类可以继承而接口不可以B)类不可以继承而接口可以C)类可以多继承而接口不可以D)类不可以多继承而接口可以14.下列方法定义中,【】是抽象方法。A)staticvoidfunc(){}B)virtualvoidfunc(){}C)abstractvoidfunc(){}D)overridelvo

7、idfunc(){}15.下列关于接口的说法,错误的是【】。A)一个类可以有多个基类和多个基接口B)抽象类和接口都不能被实例化C)抽象类自身可以定义成员,而接口不可以D)类不可以多重继承,而接口可以。16.已知类Base、Derived的定义如下:classBase{publicvoidHello(){System.Console.Write(“HelloinBase!”);}}classDerived:Base{publicnewvoidHello(){System.Console.Write(“He

8、lloinDerived!”);}}则下列语句段在控制台中的输出结果是【】。Derivedx=newDerived();x.Hello();A)HelloinBase!B)HelloinBase!HelloinDerived!C)HelloinDerived!D)HelloinDerived!HelloinBase!17.关于继承,下列说法正确的是【】。A)子类将继承父类所有的成员B)子类将继承父类的非私有成员C)子类只继承父类public

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。