




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、C#面向对象编程-多态 1C#中的方法重写使用关键字()。 a) override b) overload c) static d) inherit 2以下的C#代码,试图用来定义一个接口: public interface IFile int A; int delFile() A = 3; void disFile(); 关于以上的代码,以下描述错误的是()。(选择一项) a) 以上的代码中存在的错误包括:不能在接口中定义变量,所以int A代码行将出现错误 b) 以上的代码中存在的错误包括:接口方法delFile是不允许实现的,所以不能编写具体的实现函数 c) 代码void disFile
2、();定义无错误,接口可以没有返回值 d) 代码void disFile();应该编写为void disFile(); 3在C#中,接口与抽象基类的区别在于()。 a) 抽象基类可以包含非抽象方法,而接口只能包含抽象方法 b) 抽象基类可以被实例化,而接口不能被实例化 c) 抽象基类不能被实例化,而接口可以被实例化 d) 抽象基类就是接口,它们之间无差别 4在开发某图书馆的图书信息管理系统的过程中,开始为教材类图书建立一个TextBook类;现在又增加了杂志类图书,于是需要改变设计,则下面最好的设计应该是()。 a) 建立一个新的杂志类Journal。 b) 建立一个新的杂志类Journal,
3、并继承TextBoook类。 c) 建立一个基类Book和一个新的杂志类Journal,并让Journal类和TextBoook类都继承于Book类。 d) 不建立任何类,把杂志图书的某些特殊属性加到TextBoook类中。 5可以使用()关键字重写方法。 a) Override b) New 6()可以看作类的模具。 抽象类 A.B. 接口 C. 虚方法 7以下叙述正确的是:() A接口中可以有虚方法。 B.一个类可以实现多个接口。 C接口不能被实例化。 D.接口中可以包含已实现的方法。 8.下列代码输出为( ): class Father public void F() Console.W
4、riteLine(A.F); public virtual void G() Console.WriteLine(A.G); class Son: Father new public void F() Console.WriteLine(B.F); public override void G() Console.WriteLine(B.G); class override_new static void Main() Son b = new Son(); Father a = b; a.F(); b.F(); a.G(); b.G(); A. A.F B.F A.G B.G B. A.F B
5、.F B.G B.G C. A.F A.F B.G B.G D. B.F B.F B.G B.G 9写出程序的输出结果: public class A public virtual void Fun1(int i) Console.WriteLine(i); public void Fun2(A a) a.Fun1(1); Fun1(5); public class B:A public override void Fun1(int i) base.Fun1(i+1); public static void Main() B b=new B(); A a=new A(); a.Fun2(b);
6、 b.Fun2(a); 10在C中,允许多接口继承,从多个接口时,使用“:”后跟继承的接口的名字,多个接口名称之间使用()符号进行分割。(选择一项) a)”. b)”-” c)”,” d)”:” 11在.NET中,关于组件多态性的陈述,下面除了( )都是正确的。(选择一项) a可以通过接口实现多态性 b可以通过抽象类实现多态性 c多态性不只是重载或重写,而是智能重写 d在多态性中,需要调用哪个方法的决定是在设计时做出的 12多态性允许对类的某个方法进行调用而无需考虑该方法所提供的特定实现,例如,可能有名为了Road的类,它调用另一个类的Drive方法,另一个类可能是SportsCar 或Sma
7、llCar, 但二者都提供Drive方法,虽然Drive 方法的实现因类的不同而异,但Road 类仍可以调用它,并且它提供的结果可由Road 类使用和解释。在 .NET 中,可以由以下的方式来实现组件中多态性,除了()。(选择一项) a) 通过接口实现多态性 b) 通过多个不同的子类从单个基类继承实现多态 c) 通过抽象类实现多态性 d) 通过受保护的成员函数来实现多态性 13阅读以下的C#代码: class A public abstract void printStr(string str) Console.WriteLine(str); class B:A public override
8、 void printStr(string str) str=str+(重写的方法); Console.WriteLine(str); class DefaultInitializerApp public static void Main() B b=new B(); A a=b; ?牰湩却牴尨打印); ?牰湩却牴尨打印); Console.ReadLine(); 运行程序后将在控制台窗口打印( )。(选择一项) a. 打印 重写的方法 b. 打印 打印 重写的方法 c. 打印 d. 程序有误,不能运行 14在C#的语法中,()关键字可以实现在派生类中对基类的虚函数进行重载(选一项) a ov
9、erride b new c static d virtual 15对下面的C # 程序: using System; public interface IAccount void PosInterest(); void DeductFees(int feeSchedule); class BusinessAccount : IAccount int A; public static void Main() BusinessAccount B = new BusinessAccount(); Console.WriteLine(B.A); Console.ReadLine(); public
10、void IAccount.PostInterest() A = A+1; public void IAccount.DeductFees(int feeSchedule) A = A + feeSchedule; 以下的说法正确的是 ( ) (选择一项) a) 程序将出现编译错误,指示不能在实现接口BusinessAccount的类中定义成员 A. b) 程序将出现编译错误,指示Public关键字对接口项无效 c) 程序编译正常,但是出现运行时错误,指示变量A没有初始化 d) 程序将正常运行,输出为0 16.可以使用()关键字重写方法。 A. Override B. new 17.()可以看
11、作类的模具。 A. 抽象类 B. 接口 C. 虚方法 18.请问,此程序输出结果是() abstract class BaseClass public virtual void MethodA()Console.WriteLine(BaseClass); public virtual void MethodB() class Class1: BaseClass public void MethodA()Console.WriteLine(Class1); public override void MethodB() class Class2: Class1 new public void Me
12、thodB() class MainClass public static void Main(string args)Class2 o = new Class2();o.MethodA(); A. BaseClass B. BassClass Class1 C. Class1 D. Class1 BassClass 19.请问,此程序输出结果是() public abstract class A public A() Console.WriteLine(A); public virtual void Fun() Console.WriteLine(A.Fun(); public class
13、B: A public B() Console.WriteLine(B); public new void Fun() Console.WriteLine(B.Fun(); public static void Main() A a = new B();a.Fun(); A. A B A.Fun() B. A B B.Fun() C. B A A.Fun() D. B A B.Fun() 20.以下叙述正确的是(): A. 接口中可以有虚方法。 B. 一个类可以实现多个接口。 C. 接口不能被实例化。 D. 接口中可以包含已实现的方法。 21以下关于C#代码的说法正确的是()。(选择一项) P
14、ublic abstract Animal Public abstract void Eat(); Public void Sleep() a. 该段代码正确 b. 代码错误,因为类中存在非抽象方法 c. 代码错误,因为类中的方法没有实现 d. 通过代码“Animal an = new Animal();”可以创建一个Animal对象 22.在c#中,关于继承和接口,以下说法正确的是() (单选) a. c#允许许多接口实现,也允许多重继承 b.c#允许多接口实现,但不允许多重继承 c.c#不允许多接口实现,但允许多重继承 d.c#不允许多重接口实现,也不允许多重继承 23) 在C#中,已知下
15、列代码的运行结果是“老虎吃动物”,请问在空白处1和空白处2 () 分别应该填写的代码是 Public class Animal Public 空白处1 void Eat() Consone.WriteLine(“我要吃”); Public class Tiger:Animal Public 空白处2 void Eat() Consone.WriteLine(“老虎吃动物”); Public calssTest Static void Main() Animal an = new Tiger(); an.Eat; a) Virtual , new b) override , virtual c)
16、 virtual , override d) new , virtual 24) 在C#中,下列关于抽象类和接口的说法,正确的是)()(选择一项) a) 在抽象类中,所以的方法都是抽象方法 b) 继承自抽象类的子类必须实现起父类(抽象类)中的所以抽象方法 c) 在接口中,可以有方法实现,在抽象类中不能有方法实现 d) 一个类可以从多个接口继承,也可以从多个抽象类继承 25) 关于以下C#代码的说法正确的是() Public abstract class Animal Public abstract void Eat(); Public class Tiger:Animal Public ove
17、rride void Eat() Console.WriteLine(“老虎吃动物”); Public class Tigress:Tiger Static void main() Tigress tiger=new Tigress(); Tiger.Eat(); a) 代码正确,但没有输出 代码正确,b) 并且输出为”老虎吃动物”; 代码错误,因为c) Tigress类没有实现抽象基类Animal中的抽象方法 代码错误,因为抽象基类Animal的 d)Eat方法没有实现 26) 在c#中 某程序员定义了一个IDataBase接口,以及实现该接口的类CDataBase ,下列关于该段代码说法正
18、确的是()(选择一项) public interface IDataBase void OpenTable( string tableName); tableName); string UpDataTable( void CDataBase:IDataBase classpublic tableName) public OpenTable( voidstring ); 打开数据表潃獮汯?牗瑩?湩? tableName) string UpdataTable(void public ); 更新数据表潃獮汯?牗瑩?湩? Main() static void CDataBase(); CDataBa
19、se db = new db.OpenTable(Customers); a)该段代码错误,因为在定义接口时,接口中的方法没有提供实现 该段代码错误,因为接口中声明的方法不是公有的,应此在b)CDataBase类中不能访问接口中的方法去掉,方法,UpdataTable该段代码正确,c)同时由于客户没有调用类中的可以把CDataTableUpdataTable 代码仍然正确则必须在void Execute(string sql); 接口中声明一个方法该段代码正确,但是如果在d)IDataBase CDataBase中实现该方法 下列代码运行结果是()(选择一项) 中27.C#public cla
20、ss Student public virtual void Exam() 潃獮汯?牗瑩?湩?学生都要考试); Undergraduate:Student public class Exam() void publicnew .Exam(); base ); 潃獮汯?牗瑩?湩?大学生有选择考试科目的权利 Test classpublic void Main() static Undergraduate(); Student stu = new stu.Exam(); 学生都要考试a) b)大学生有选择考试科目的权利 c)大学生都要考试 大学生有选择考试科目的权利 学生都要考试d) 学生都要考试
21、 28)c#中 下列代码的运行结果是()(选择一项) struct Student public int age; public string name; public Student(int age,string name) this.age=age; .name=name; this Test classpublic Mian() staticvoid); Student stu1= new匠畴敤瑮?小方 ); 匠畴敤瑮?小刚new Student stu2= stu2=stu1; stu1.age=30; ; 小燕瑳?渮浡?Console.WriteLine(stu2.age); Con
22、sole.WriteLine(); a)18 小方 b)18 小燕 c)30 小燕 d)30 小方 29)在C#中,下列()关键字用于重写基类的虚拟方法。(选择一项) a)override b)new c)base d)virtual 委托和事件 C#面向对象编程-委托和事件 1阅读以下C#代码 Namespace tevent public delegate void notify5(); class eventTest public void Raise5(int I) if(I%3=1) Got5(); public event notify5 Got5; class H
23、andlers public static void Method1() ?湯潳敬圮楲整楌敮尨时间处理完成); class class10 static void Main(String args) eventTest eObj=new eventTest(); eObj.Got5+=new notify5(Handlers.Method1); for(int cnt=0;cnt As b = c = d Instead 12C#语言使用()来引入名称空间。 a) Import b) Using c) Include d) Lib 13.()关键字是类型和类型成员的访问修饰符。(D)内部成员只
24、有在同一程序集中的文件内才是可访问的。 A. public B.private C.protected D.internal E.sealed 14.下列哪些说法是错误的() A. 抽象类可以实例化。 B. 不可以改变常量的值. C. 可以使用 this 引用静态方法或属性访问器. D. readonly 变量只能在构造函数中赋值. E. 一个父类的private 成员可以在子类中直接调用. 15.请问,Class1.Count的值是多少?() class Class1public static int Count = 0; static Class1()Count+; public Clas
25、s1()Count+; public static void Main() Class1 o1 = new Class1();/1 Class1 o2 = new Class1();/5 Console.WriteLine(Class1.Count); A. 1 B. 2 C. 3 D. 4 16.下面的代码实现了设计模式中的()模式 public class A private A instance; private A() public static A Instance get if ( A = null ) A = new A(); return instance; A. Factory B. Abstract Factory C. Singleton D. Builder 17.下面的代码实现了设计模式中的()模式 public seale
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 幼儿园安全教育日主题班会
- 水利水电工程新项目评审试题及答案
- 2025年中级经济师重要考点试题及回答
- 线护理工作总结与改进计划
- 在c语言期末考试试题及答案
- 孵化跳水测试题及答案
- 医疗机构考试试题及答案
- 钓螃蟹面试题及答案
- 主管工作中的数据分析利用计划
- 学校环境中的艺术装置设计计划
- 汽车行业智能驾驶辅助系统开发方案
- 服务基层行治疗(3.5.4消毒与灭菌工作管理)
- 2023年二级注册计量师考试题目及答案
- 2021年6月高考英语试题(浙江卷)
- 武汉武昌区五校联考2023-2024学年中考五模英语试题含答案
- 2024年湖南省长沙市中考数学试题
- 公路水运工程施工企业主要负责人和安全生产管理人员考核大纲和模拟试题库1
- 设备管理工作总结汇报
- 店铺合租合同模板
- 湖南少数民族舞蹈智慧树知到期末考试答案章节答案2024年湖南师范大学
- 公园维修施工组织设计方案方案
评论
0/150
提交评论