从 OOP 的角度来看,派生类和继承类之间有什么区别吗?还是只是术语?
问问题
15182 次
5 回答
15
使用继承时,被继承的类称为基类,继承类称为派生类。
于 2010-01-16T11:10:17.693 回答
5
派生类一词是从另一个类继承的类的首选 C++ 用语,在 C++ 用语中称为基类。因此,在 C++ 中,您询问的术语是相同的。
于 2010-01-16T11:15:21.033 回答
2
尼尔的回答让我有点困惑,所以我查看了一些公共资源。
考虑一个基类和一个子类(SubClass extends BaseClass
在 Java 术语中),而不是
- 子类派生基类(子类是基类的派生类)和
- 子类继承自基类(基类是子类的一个/继承的类)
因此,在我看来,这两个术语都定义了类之间的相同关系,但从不同的角度。
于 2010-01-16T11:29:25.970 回答
0
Bertran Meyer 的继承术语(面向对象的软件构建,第 464 页):
基本约定和术语
除了“继承人”和“父母”之外,以下术语也很有用。
类C的后代是直接或间接从C继承的任何类 ,包括C本身。(形式上:要么C,要么递归地, C 的继承人的后代。)C的祖先是A类,使得C是A的后代。
在文献中你也会遇到“子类”和“超类”这两个词,但我们会远离它们,因为它们是模棱两可的;有时“子类”是指继承人(直系后裔),有时它用于更一般意义上的适当后裔,并不总是很清楚是哪个。此外,我们将看到这个词的“子集”内涵并不总是合理的。
于 2010-01-16T11:41:46.387 回答
0
也许很有趣,如果你重写一个方法,在 Delphi 中你写:
inherited; // so "inherited" is the base class
代替
base.BaseImplementation(); // C#
于 2010-01-16T11:45:07.863 回答