扫一扫二维码
进群一起备考
查看更多
当前 - 选择题 - 面向对象设计简单
单选题
2022年5月第28题
简单
单选题
2022年5月第28题
#第二版教材
#必须掌握
在面向对象方法中,一个子类有多个父类,可以从多个父类中继承特性,这种继承称为 (问题1) 。 对于两个类A和B,如果A是B的子类,则B是A的 (问题2) 。
浓缩知识点
面向对象编程中,继承是实现代码复用、构建类层次结构的核心机制。其中多重继承指一个子类可同时拥有多个父类,能继承多个父类的属性与方法,与之相对的单一继承则限定子类仅能有一个父类,多重继承虽能提升代码复用能力,但需留意可能引发的菱形继承等逻辑冲突问题。在UML等面向对象建模体系中,类的继承关系对应泛化与特化概念,若类A是类B的子类,那么A是B的特化类,B就是A的泛化类,需注意将泛化与其他概念区分开:聚合用于描述类之间整体与部分的关联关系,耦合是衡量模块间依赖程度的指标,聚类属于数据分析范畴,均与继承泛化关系无直接关联。
正确答案
A
本题考察的是面向对象方法中的继承与泛化关系。
继承是面向对象编程的核心机制之一,描述了类之间的层次结构和属性、方法的复用关系。
问题1:
A选项 多重继承:指一个子类同时拥有多个父类,可以继承它们的属性和方法,这是面向对象方法中的概念,正确。
B选项 单一继承:指子类只能有一个父类,不符合题干“多个父类”的描述,错误。
C选项 多例继承:并不是继承关系中的常用术语,错误。
D选项 单例继承:混淆了“单例模式”的概念,不是继承的一种形式,错误。
所以选择 A。
问题2:
A选项 聚合:表示类之间的“整体—部分”关系,而不是继承关系,错误。
B选项 泛化:继承关系中,若 A 是 B 的子类,则 B 就是 A 的泛化类,这是 UML 建模中的标准概念,正确。
C选项 聚类:是一种数据分析方法,与类之间的继承关系无关,错误。
D选项 耦合:描述模块之间的依赖程度,而非继承关系,错误。
所以选择 B。
