首页 > 试题广场 >

关于子类型的描述中,( )是错误的?

[单选题]
关于子类型的描述中,( )是错误的?
  • 在公有继承下,派生类是基类的子类型
  • 子类型关系是不可逆的
  • 子类型就是指派生类是基类的子类型
  • 一种类型当它至少提供了另一种类型的行为,则这种类型是另一种类型的子类型
我怎么没听说子类型概念
发表于 2017-07-11 14:30:12 回复(0)
更多回答
推荐
子类型必须是子类继承了父类的所有可继承特性,也即公有继承,才能说是子类型,否则就只是单纯的子类
编辑于 2016-02-23 23:23:28 回复(2)
公有继承可以实现子类型化,所以A正确,派生类是基类的子类型
子类型关系不可逆 ,B正确
子类型强调的是新类具有父类一样的行为(未必是继承) C错 D正确


补充概念:
替换原则只适合于子类型关系
类型适应:B类型适用于A类型指的是B类型的对象能够用于A类型的对象所能适用的场所。
经典案例:
正方形是长方形的子类,但不是子类型
发表于 2017-04-11 20:02:54 回复(0)
“子类”和“子类型”是不同的,替换原则只适合于"子类型"关系,而一般编程语言只是考虑了"子类"关系,
子类 : 说明了新类是继承自父类
子类型 : 强调的是新类具有父类一样的行为(未必是继承)。
那么,什么时候才应该使用继承?  那就是符合子类型关系的时候,或者一般所说的”is a"关系, 你必须保证新类的行为与父类完全一致!!!
在任何使用父类的场合,新类应该表现一样的行为。
发表于 2017-03-23 20:46:53 回复(0)
公有继承下派生类为基类的子类型,其他都只是子类
发表于 2016-09-27 07:50:30 回复(0)
。我想问一下如果类B是类A的友元类,B可以访问A的私有和保护数据成员,即A为B提供了D的说法,但是他们没有父子关系吧?
发表于 2018-09-07 16:58:55 回复(2)
私有继承也是继承了父类所有可继承特性,只是访问限制。如私有继承继承了基类的私有成员,只是无法访问。
发表于 2015-12-13 19:38:01 回复(0)
子类:是指要继承父类
子类型:是指由父类中的一些行为,但不一定是继承
发表于 2020-07-26 10:31:21 回复(0)
子类,子类型。。。公有继承才算子类型。其他的是子类
发表于 2016-09-05 11:39:56 回复(1)
子类 : 说明了新类是继承自父类
子类型 : 强调的是新类具有父类一样的行为(未必是继承)。
编辑于 2024-02-20 12:04:49 回复(0)
发表于 2022-06-14 19:33:42 回复(0)
混淆了子类和子类型的概念,子类型条件非常强,它强调的是新类具有父类一样的行为。
发表于 2021-06-08 17:58:13 回复(0)
公有继承,子类继承父类所有可继承特性,包括方法 子类型,新类与父类具有相同的行为
发表于 2020-03-07 01:32:57 回复(0)
D。。。。
发表于 2019-09-02 08:33:49 回复(0)
百度百科解释的比较全面:

子类是子类型的其中一种情况。
子类型也包括 组合关系等。

编辑于 2019-05-24 14:40:53 回复(0)
子类 : 说明了新类是继承自父类
子类型 : 强调的是新类具有父类一样的行为(未必是继承)。
发表于 2018-05-25 15:41:16 回复(0)
c++中,私有继承的类不是该类的子类型
发表于 2016-08-07 00:12:58 回复(0)
根据你们这么说不应该CD都是错的?搞混乱了都
发表于 2016-05-06 14:19:16 回复(0)
子类型必须是子类继承了父类的所有可继承特性,也即公有继承,才能说是子类型
发表于 2015-10-10 09:48:38 回复(0)
这道题答案应该是错了,应该选C,网上查过的答案都是C
发表于 2015-09-06 10:02:54 回复(0)
我觉得应该选C呀,网上查的私有继承就不能说是子类型,D不是定义吗
发表于 2015-09-05 23:44:20 回复(0)