关键区别-超类与子类
在面向对象编程(OOP)中,系统是用对象建模的。这些对象是使用类创建的。类是用来创建对象的蓝图或描述。对象创建也称为对象实例化。每个对象都在与其他对象通信。一个程序或软件可以使用面向对象的编程来开发。继承是OOP中的一个主要概念。它提高了代码的可重用性。它不需要从一开始就实现一个程序,而是允许将已经存在的类的属性和方法继承到一个新类中。这有助于使程序更易于管理。超类和子类是与继承相关的两个术语。本文讨论了超类和子类之间的区别。超类和子类之间的关键区别在于,超类是派生新类的现有类,而子类是继承超类属性和方法的新类。
目录
1. 概述和主要区别
2. 什么是超类
3. 什么是子类
4. 超类与子类的相似性
5. 并列比较-表格形式的超类与子类
6.摘要
什么是超类(superclass)?
在继承中,派生新类的现有类称为超类。它也被称为父类或基类。
有不同的继承类型。下面的例子说明了这一点。把A B和C看作类。
根据上面的图表,超类因每个继承类型而异。在单级继承中,A是超类。在多级继承中,A是B的超类,B是C的超类。在分层继承中,A是B和C的超类。在多重继承中,A和B都是C的超类。
混合遗传是多层次和多层次遗传的结合。在左图中,A是B、C和B的超类,C是D的超类。在右边的图中,A是B和B的超类,D是C的超类。
参考下面用Java编写的程序。
根据上面的程序,类A有sum()和sub()方法。类B有multiply()方法。类B是对类A的扩展,因此,类B可以访问类A的属性和方法,因此,类A是超类。使用类B的引用类型来创建对象。因此,对象可以访问sum()、sub()和multiply()等所有方法。如果超类引用类型用于对象创建,则无法访问类B的成员。e、 因此,超类引用不能调用multiply()方法,因为该方法属于类B。
什么是子类(subclass)?
根据上述图表,子类根据每个继承类型而不同。在单继承中,B是子类。在多级继承中,B是A的子类,C是B的子类,在层次继承B和C是A的子类,在多个继承中,C是A和B的子类。
在混合继承中,左边的图B和C是A的子类。D是B和C的子类。在右边的图中,B是A的子类。C是B和D的子类。
根据上面的继承程序,B类是对A类的扩展,因此,B类可以访问A类的所有属性和方法。B类是继承自A类的新类,称为子类。它也被称为子类或派生类。类B有multiply()方法,它还可以使用继承访问类A的sum()和sub()方法。
什么是超类与子类的相似性(the similarity between superclass and subclass)?
- 两者都与遗传有关。
超类(superclass)和子类(subclass)的区别
超类与子类 | |
在实现继承时,派生新类的现有类是超类。 | 在实现继承时,从超类继承属性和方法的类是子类。 |
同义词 | |
超类被称为基类、父类。 | 子类称为派生类、子类。 |
功能 | |
超类不能使用子类的属性和方法。 | 子类可以使用超类的属性和方法。 |
单级继承 | |
有一个超类。 | 有一个子类。 |
等级继承 | |
有一个超类 | 有许多子类。 |
多重继承 | |
有很多超类。 | 有一个子类。 |
总结 - 超类(superclass) vs. 子类(subclass)
继承是OOP的一个概念。它允许使用现有类的属性和方法由新类访问。继承的类是超类,派生类是子类。超类和子类的区别在于,超类是从中派生新类的现有类,而子类是继承超类的属性和方法的新类。
下载pdf超类vs子类
你可以下载这篇文章的PDF版本,并按照引文说明离线使用。请在此下载PDF版本超类和子类的区别