一、选择题(每空2分,共10分)
1、下列选项中,( )是引用类型。
A.enum类型 B.struct类型 C.string类型 D.int类型
2、下列描述错误的是( )
A.类不可以多重继承而接口可以;
B.抽象类自身可以定义成员而接口不可以:
C.抽象类和接口都不能被实例化:
D.一个类可以有多个基类和多个基接口:
3、下列关于C#中索引器理解正确的是( )
A.索引器的参数必须是两个或两个以上
B.索引器的参数类型必须是整数型
C.索引器没有名字
D.以上皆非
4、下列关于构造函数的描述正确的是( )
A.构造函数可以声明返回类型。
B.构造函数不可以用private修饰
C.构造函数必须与类名相同
D.构造函数不能带参数
5、接口是一种引用类型,在接口中可以声明( ),但不可以声明公有的域或私有的成员变量
A.方法、属性、索引器和事件:
B.方法、属性信息、属性;
C.索引器和字段;
D.事件和字段:
二、填空题(每空2分,共20分)
1、C#的数据类型有值类型和_________________。
2、面向对象是一种新兴的程序设计方法,面向对象的基本特征有_________________、_________________、_________________。
3、构造函数在_________________时被调用。
4、类是一种数据结构,它使用_________________关健字声明。
5、类声明后,可以创建类的实例,创建类的实例要使用_________________关键字。
6、一个接口定义一个协定。实现接口的类或结构必须遵守其协定。接口的声明格式为:_________________。
7、抽象类是一种不能直接创建对象的类,通常是部分实现的或者完全不实现。抽象类使用关键字_________________来声明。
8、创建新对象时将调用类的_________________。它主要用来为对象分配存储空间,完成初始化操作。
三、编程题(共70分)
1、编写一个接口ITest,,包含两个方法GetArea()和GetZC(),分别用来求圆的面积和周长
定义一个类Circle来实现接口Test里面的方法,分别输出圆的面积和周长,并声明一个double数据类型的字段半径R,写一个有参的构造方法用来初始化半径R,(要求必须写无参构造方法)
在Program类里面初始化一个对象cir来分别调用求周长和面积的方法(30分)
(接口10分,类的构造方法5分,继承5分,方法的实现10分,主入口测试5分)
2、创建Calculate基类,其中包含两个整型的protected成员,用以接收用户输入的两个整数。定义一个DisplayResult()虚方法,计算并显示结果
定义四个类(One、Two、Three、Four)派生自Calculate类,分别重写DisplayResult()虚方法,分别实现两个整数的加、减、乘、除运算并输出结果
实例化四个对象,分别调用四个类里面的方法实现加、减、乘、除(40分)
(基类中protected成员4分,虚方法6分:派生类20分,每个5分:实例化四个对象并调用方法实现加减乘除10分)
评论 (0)