面向对象编程/子类
外观
< 面向对象编程
子类,也称为派生类、继承类或子类,是继承自另一个类/类的语言实体的一个或多个类。虽然不同语言之间类继承的工作方式可能存在一些细微差别,但通常情况下,子类会自动继承其超类或父类的实例变量和成员函数。 [1] 从维基百科页面上关于继承的内容,您可以看到子类是如何定义的。 [2]
class SubClass: visibility SuperClass
{
// subclass members
};
'Subclass' 末尾的冒号表示它继承自末尾的 "SuperClass"。
一些语言有不可子类化的类。这些是没有任何子类的类。可以通过在类声明中添加某些类修饰符来创建不可子类化的类。创建后,不可子类化的类会限制代码的可重用性,尤其是在源代码不可访问时。创建不可子类化的类的类修饰符的几个例子包括 Java 的 'final' 关键字或 C# 的 'sealed' 关键字。这些修饰符是在类关键字和标识符声明之前添加到类声明中的。
由于不可子类化的类没有子类,因此对该类对象的引用或指针可以很容易地推断为引用该类的实例,而不是子类或超类的实例,因为不可子类化的类没有子类,并且对超类的实例会违反类型系统。由于在执行之前就知道引用的对象的精确类型,因此可以使用早期绑定(静态调度)而不是后期绑定(动态调度)。
- ↑ https://en.wikipedia.org/wiki/Inheritance_(object-oriented_programming)
- ↑ Herbert Schildt (2003). C++ 完整参考. 塔塔麦格劳-希尔教育私人有限公司. 第 417 页. ISBN 978-0-07-053246-5.