第28卷 C#面向对象设计(2)河北省对口招生考试-计算机类《算法与程序设计双析卷》
2026-04-29
|
2份
|
11页
|
63人阅读
|
0人下载
内容正文:
编写说明:河北省普通高等学校对口招生考试计算机类《算法与程序设计考点双析卷》,依据《河北省普通高等学校对口招生计算机类专业考试考试大纲》编写。“考点双析卷”即围绕一个考点,一份是老师的讲解卷一份是学生的练习卷。助力师生构建 “讲练结合” 的学习闭环,适用于高考复习教学。
本专辑第27、第28卷精准对标河北省考纲,知识模块(四)C#面向对象设计:
1. 掌握面向对象的三大特征:封装、继承、多态;
2. 掌握类和对象的概念、类的定义、对象的创建与使用、属性和方法;
3. 掌握关键字this、this访问属性、this调用成员方法、this调用构造方法;
4. 掌握关键字static、静态字段、静态属性、静态方法;
5. 掌握构造函数的语法格式和用法;
6. 了解封装的作用与实现;
7. 了解继承的概念、语法和实现。
河北省对口招生考试 计算机类
《算法与程序设计》考点双析卷 第28卷
C#面向对象设计(2) 学生练习卷
时间:45分钟 总分:100分
班级_______ 姓名_______ 学号_______ 成绩_______
一、单项选择题(本大题共20小题,每题3分,共60分)
1.关于 C# 继承,错误的说法是( )
A.一个子类能同时继承多个父类
B.标记为 sealed 的类不能被继承
C.子类继承父类,也可称父类派生子类
D.Object 类是所有类的直接或间接基类
【答案】A
【详解】C# 中一个子类只能有一个直接父类,不支持多重继承;sealed 修饰的类是密封类,不能被继承;子类由父类派生而来,表述合理;.NET 中所有类最终都间接或直接继承自 Object 类 。
2.以下继承说法错误的是( )
A..NET 中 Object 类是所有类的基类
B.派生类不能直接访问基类的私有成员
C.protected 修饰的成员,派生类和同一程序集内其他类可访问
D.基类对象不能引用派生类对象
【答案】D
【详解】派生类是基类的特殊化,基类对象可以引用派生类对象(多态中的向上转型 ,如 BaseClass obj = new DerivedClass(); );Object 是所有类的最终基类;私有成员只能在类内部访问,派生类也无法直接访问;protected 成员在派生类和同一程序集内可访问 。
3.以下对 C# “委托”和“事件”关系的描述,正确的是( )
A.事件本质是一种特殊的委托,封装了委托的订阅/取消逻辑
B.委托就是事件,二者完全等价
C.事件能直接赋值方法,委托不行
D.委托可在类外部直接触发,事件也能在类外部直接触发
【答案】A
【详解】- A:事件基于委托实现,内部封装委托实例,对外暴露 +=(订阅)、-=(取消),隐藏直接赋值(如 = ),避免外部随意修改,A 正确;
- B:委托是“方法引用类型”,事件是“基于委托的封装”,用于解耦发布 - 订阅逻辑,不等价,B 错误;
- C:事件不能直接赋值(禁止 event1 = 方法 ,只能 event1 += 方法 ),委托可直接赋值(如 myDelegate = 方法 ),C 错误;
- D:事件设计为“类内部触发、外部订阅”,类外部无法直接触发事件;委托若暴露可在外部调用(如 myDelegate() ),D 错误。
4.派生类访问基类成员,可使用 关键字。( )
A.base B.this C.out D.external
【答案】A
【详解】base 用于在派生类中访问基类的构造函数、属性和方法;this 指代当前类对象;out 是方法参数修饰符;external 用于声明外部实现的方法 。
5.以下 选项是base关键字的正确用法。( )
A.调用基类的构造函数 B.调用基类的方法
C.访问基类的字段 D.以上都是
【答案】D
【详解】base关键字可以用于调用基类的构造函数、方法和访问基类的字段。
6.类的继承原则不包括( )
A.单继承原则
B.子类可以访问父类的 private 成员
C.子类可以重写父类的虚方法
D.子类可以添加自己的新成员
【答案】B
【详解】在 C# 中遵循单继承原则,一个类只能直接继承一个基类,A 是继承原则;子类可以重写父类的虚方法以实现多态,C 是继承原则;子类可以添加自己的新成员来扩展功能,D 是继承原则;而子类不能直接访问父类的 private 成员,B 不是继承原则。
7.以下关键字用于在派生类中调用基类的构造函数的是( )
A.This B.base C.super D.new
【答案】B
【详解】base关键字用于在派生类中调用基类的构造函数。
8.C# 中一个类( )
A.可以继承多个类 B.可以实现多个接口
C.一个程序中只能有一个子类 D.只能实现一个接口
【答案】B
【详解】C# 不支持类的多重继承,但支持一个类实现多个接口,接口实现可让类具备多种行为规范 。
9.以下关键字中用于实现类的继承的是( )
A.Extends B.inherits C.: D.base
【答案】C
【详解】C#中使用:符号实现类的继承,例如:class DerivedClass : BaseClass { }。
10.封装的主要目的不包括( )
A.提高代码的可维护性
B.提高代码的安全性
C.允许外部随意修改类的内部数据
D.隐藏类的实现细节
【答案】C
【详解】封装的目的包括提高代码的可维护性、安全性,隐藏类的实现细节等,而不是允许外部随意修改类的内部数据,C 选项不符合封装的目的。
11.类 Class A有一个名为 T1 的方法,在程序中有如下一段代码,假设该段代码是可以执行的,则修饰 T1 方法时一定使用了 修饰符。( )
ClassA obj=new Class A();
ClassA.T1();
A.public B.static C.private D.virtual
【答案】B
12.在类的成员中,用于存储属性值的是( )
A.属性 B.方法 C.事件 D.成员变量
【答案】A
13.C#中,关于构造函数的特点,下列说法正确的是( )
A.构造函数的名称必须与类名相同
B.构造函数可以有返回值
C.构造函数不能有参数
D.一个类只能有一个构造函数
【答案】A
【详解】构造函数的名称必须与类名相同,并且没有返回值(包括void)。构造函数可以有参数,也可以进行重载,一个类可以有多个构造函数。
14.以下关于类的方法的说法,错误的是( )
A.方法可以有返回值,也可以没有返回值(返回类型为void)
B.方法可以有参数,也可以没有参数
C.方法名必须以大写字母开头
D.方法可以被重载
【答案】C
【详解】方法应以大写字母开头,但不是必须以大写字母开头。
15.类的属性主要作用是( )
A.替代方法,执行复杂业务逻辑 B.封装字段,控制字段的读取和写入逻辑
C.只能用于存储数据,和字段功能一样 D.必须同时包含 get 和 set 访问器
【答案】B
【详解】属性用于封装字段,通过 get 控制读取、set 控制写入,可在其中加验证等逻辑;A 方法执行复杂逻辑,属性侧重字段访问控制;C 属性不是单纯存数据,和字段功能不同;D 属性可只写(只有 set )、只读(只有 get ),不一定同时有,所以选 B 。
16.关于类的字段,以下说法正确的是( )
A.字段只能是私有的
B.字段用于存储数据,表示对象状态,可设置不同访问修饰符
C.字段不能用 public 修饰
D.字段就是属性,二者无区别
【答案】B
【详解】字段用于存数据、表示对象状态,可通过 public、private 等访问修饰符控制访问权限;A 字段可公有可私有;C 字段能用 public 修饰;D 字段是直接存数据,属性用于封装字段,有 get、set 逻辑,二者不同,所以选 B 。
17.在 C# 中,声明类使用的关键字是( )
A.struct B.class C.interface D.enum
【答案】B
【详解】C# 里用 class 关键字声明类,struct 用于声明结构体,interface 声明接口,enum 声明枚举,所以选 B 。
18.关于构造函数,正确的是( )
A.可定义多个同名、参数不同的构造函数
B.类中必须显式定义构造函数
C.构造函数名称必须和类名不同
D.一个类只能有一个构造函数
【答案】A
【详解】构造函数可重载,即定义多个同名但参数列表不同的构造函数;类默认有无参构造函数,可不显式定义;构造函数名必须与类名一致;一个类可多个构造函数 。
19.定义类 MyClass 及方法 public void Show(),创建对象 MyClass obj = new MyClass(); 后,访问 Show 方法正确的是( )
A.obj.Show(); B.obj::Show();
C.MyClass.Show(); D.MyClass::Show();
【答案】A
【详解】实例方法通过对象实例调用,格式为 对象名.方法名() ;静态方法才通过 类名.方法名() 调用,这里 Show 是实例方法 。
20.以下不能用来修饰类的关键字是( )
A.sealed B.abstract C.override D.public
【答案】C
【详解】override 用于重写继承的虚方法或抽象方法,不能修饰类;sealed 可修饰类表示密封类,不能被继承;abstract 修饰抽象类;public 修饰公共类,可被外部访问 。
二、填空题(本大题共8小题,每题5分,共40分)
21.若类的字段用 private 修饰,外部代码要访问它,需借助类的____来间接访问。
【答案】公共属性(或属性 )
【详解】private 字段仅类内部可直接访问,为让外部合理访问,类需提供公共属性,在属性的 get、set 里写逻辑,既开放访问又保护数据安全。
22.用______关键字声明抽象类。
【答案】abstract
【详解】abstract 修饰类为抽象类,抽象类可包含抽象方法和非抽象方法,用于定义通用的抽象概念 。
23._______指同一消息作用于不同对象,有不同解释和执行结果。
【答案】多态
【详解】多态通过方法重写(继承体系 )和方法重载(同一类中 )实现,让程序更灵活 。
24.若一个类包含至少一个抽象方法,它必须是______类。
【答案】抽象 或 abstract
【详解】包含抽象方法的类必须用 abstract 修饰为抽象类,抽象类不能实例化,需派生类继承并实现抽象方法 。
25.方法无返回值时,返回值类型说明符是_______。
【答案】void
【详解】void 用于声明方法没有返回值,调用这类方法主要执行操作逻辑 。
26.______是对对象的抽象,将对象的属性和行为封装,形成独立单位。
【答案】类
【详解】类是抽象的概念,定义对象的特征和行为,对象是类的具体实例 。
27.类的属性中,get 访问器用于____属性值,set 访问器用于____属性值。
【答案】 获取 设置
【详解】get 访问器返回属性对应的值(常关联私有字段 ),set 访问器接收外部传入的 value 参数,把值赋给关联字段(还可加验证逻辑 ),实现对字段读写的控制。
28.如果一个属性里只有set访问器,那么该属性为_________属性。
【答案】只写
【详解】只设置set访问器,则说明是只写属性。
试卷第6页,共6页
试卷第5页,共6页
学科网(北京)股份有限公司
$
编写说明:河北省普通高等学校对口招生考试计算机类《算法与程序设计考点双析卷》,依据《河北省普通高等学校对口招生计算机类专业考试考试大纲》编写。“考点双析卷”即围绕一个考点,一份是老师的讲解卷一份是学生的练习卷。助力师生构建 “讲练结合” 的学习闭环,适用于高考复习教学。
本专辑第27、第28卷精准对标河北省考纲,知识模块(四)C#面向对象设计:
1. 掌握面向对象的三大特征:封装、继承、多态;
2. 掌握类和对象的概念、类的定义、对象的创建与使用、属性和方法;
3. 掌握关键字this、this访问属性、this调用成员方法、this调用构造方法;
4. 掌握关键字static、静态字段、静态属性、静态方法;
5. 掌握构造函数的语法格式和用法;
6. 了解封装的作用与实现;
7. 了解继承的概念、语法和实现。
河北省对口招生考试 计算机类
《算法与程序设计》考点双析卷 第28卷
C#面向对象设计(2) 学生练习卷
时间:45分钟 总分:100分
班级_______ 姓名_______ 学号_______ 成绩_______
一、单项选择题(本大题共20小题,每题3分,共60分)
1.关于 C# 继承,错误的说法是( )
A.一个子类能同时继承多个父类
B.标记为 sealed 的类不能被继承
C.子类继承父类,也可称父类派生子类
D.Object 类是所有类的直接或间接基类
2.以下继承说法错误的是( )
A..NET 中 Object 类是所有类的基类
B.派生类不能直接访问基类的私有成员
C.protected 修饰的成员,派生类和同一程序集内其他类可访问
D.基类对象不能引用派生类对象
3.以下对 C# “委托”和“事件”关系的描述,正确的是( )
A.事件本质是一种特殊的委托,封装了委托的订阅/取消逻辑
B.委托就是事件,二者完全等价
C.事件能直接赋值方法,委托不行
D.委托可在类外部直接触发,事件也能在类外部直接触发
4.派生类访问基类成员,可使用 关键字。( )
A.base B.this C.out D.external
5.以下 选项是base关键字的正确用法。( )
A.调用基类的构造函数 B.调用基类的方法
C.访问基类的字段 D.以上都是
6.类的继承原则不包括( )
A.单继承原则
B.子类可以访问父类的 private 成员
C.子类可以重写父类的虚方法
D.子类可以添加自己的新成员
7.以下关键字用于在派生类中调用基类的构造函数的是( )
A.This B.base C.super D.new
8.C# 中一个类( )
A.可以继承多个类 B.可以实现多个接口
C.一个程序中只能有一个子类 D.只能实现一个接口
9.以下关键字中用于实现类的继承的是( )
A.Extends B.inherits C.: D.base
10.封装的主要目的不包括( )
A.提高代码的可维护性
B.提高代码的安全性
C.允许外部随意修改类的内部数据
D.隐藏类的实现细节
11.类 Class A有一个名为 T1 的方法,在程序中有如下一段代码,假设该段代码是可以执行的,则修饰 T1 方法时一定使用了 修饰符。( )
ClassA obj=new Class A();
ClassA.T1();
A.public B.static C.private D.virtual
12.在类的成员中,用于存储属性值的是( )
A.属性 B.方法 C.事件 D.成员变量
13.C#中,关于构造函数的特点,下列说法正确的是( )
A.构造函数的名称必须与类名相同
B.构造函数可以有返回值
C.构造函数不能有参数
D.一个类只能有一个构造函数
14.以下关于类的方法的说法,错误的是( )
A.方法可以有返回值,也可以没有返回值(返回类型为void)
B.方法可以有参数,也可以没有参数
C.方法名必须以大写字母开头
D.方法可以被重载
15.类的属性主要作用是( )
A.替代方法,执行复杂业务逻辑 B.封装字段,控制字段的读取和写入逻辑
C.只能用于存储数据,和字段功能一样 D.必须同时包含 get 和 set 访问器
16.关于类的字段,以下说法正确的是( )
A.字段只能是私有的
B.字段用于存储数据,表示对象状态,可设置不同访问修饰符
C.字段不能用 public 修饰
D.字段就是属性,二者无区别
17.在 C# 中,声明类使用的关键字是( )
A.struct B.class C.interface D.enum
18.关于构造函数,正确的是( )
A.可定义多个同名、参数不同的构造函数
B.类中必须显式定义构造函数
C.构造函数名称必须和类名不同
D.一个类只能有一个构造函数
19.定义类 MyClass 及方法 public void Show(),创建对象 MyClass obj = new MyClass(); 后,访问 Show 方法正确的是( )
A.obj.Show(); B.obj::Show();
C.MyClass.Show(); D.MyClass::Show();
20.以下不能用来修饰类的关键字是( )
A.sealed B.abstract C.override D.public
二、填空题(本大题共8小题,每题5分,共40分)
21.若类的字段用 private 修饰,外部代码要访问它,需借助类的____来间接访问。
22.用______关键字声明抽象类。
23._______指同一消息作用于不同对象,有不同解释和执行结果。
24.若一个类包含至少一个抽象方法,它必须是______类。
25.方法无返回值时,返回值类型说明符是_______。
26.______是对对象的抽象,将对象的属性和行为封装,形成独立单位。
27.类的属性中,get 访问器用于____属性值,set 访问器用于____属性值。
28.如果一个属性里只有set访问器,那么该属性为_________属性。
试卷第6页,共6页
试卷第5页,共6页
学科网(北京)股份有限公司
$
资源预览图
1
2
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。