有一个类叫“老人”,
“老人”这个类继承与“人”,
“人”这个类继承与“哺乳动物”,
“哺乳动物”这个类有继承于“动物”。在C#中“老人”这个类不能同时继承于人和哺乳动物两个类。如果必须要这样,就自能通过接口来实现。C#中一个子类只能有一个父类。
这句话就是说,一个孩子只能有一个爸爸,但是一个爸爸,可以有多个孩子。这样理解对吗?
“老人”这个类继承与“人”,
“人”这个类继承与“哺乳动物”,
“哺乳动物”这个类有继承于“动物”。在C#中“老人”这个类不能同时继承于人和哺乳动物两个类。如果必须要这样,就自能通过接口来实现。C#中一个子类只能有一个父类。
这句话就是说,一个孩子只能有一个爸爸,但是一个爸爸,可以有多个孩子。这样理解对吗?
class是可以传递的,因此老人已经继承自哺乳动物了!尽管老人在代码上继承自人,但是老人既是人也是哺乳动物,已经没有问题。说继承关系是父子关系,是毫不懂继承,而且滥用继承。继承是“is_a”的关系,而不是“has_a”的关系。老人x本身就是人x,而不能说人x就是他自己的爸爸(除非进了疯人院)。
什么叫人不能继承自哺乳动物? 人本来就是哺乳动物变来的.这一点因为继承的年代过于久远所以一般没人提了.
如果一个人还在大街上嚷嚷着:我是大猩猩变来的,这个人肯定是从六角亭跑出来的.A继承至B,B继承自C, 当然A也就间接地继承自C了.这是不言自明的道理,还需要去显示继承吗?
不够严谨啊,这里的传递指什么呢?class可以继承别的class
interface也可以引用别的interface