超类(superclass)和子类(subclass)的区别

在面向对象编程(OOP)中,系统是用对象建模的。这些对象是使用类创建的。类是用来创建对象的蓝图或描述。对象创建也称为对象实例化。每个对象都在与其他对象通信。一个程序或软件可以使用面向对象的编程来开发。继承是OOP中的一个主要概念。它提高了代码的可重用性。它不需要从一开始就实现一个程序,而是允许将已经存在的类的属性和方法继承到一个新类中。这有助于使程序更易于管理。超类和子类是与继承相关的两个术语。本...

关键区别-超类与子类

在面向对象编程(OOP)中,系统是用对象建模的。这些对象是使用类创建的。类是用来创建对象的蓝图或描述。对象创建也称为对象实例化。每个对象都在与其他对象通信。一个程序或软件可以使用面向对象的编程来开发。继承是OOP中的一个主要概念。它提高了代码的可重用性。它不需要从一开始就实现一个程序,而是允许将已经存在的类的属性和方法继承到一个新类中。这有助于使程序更易于管理。超类和子类是与继承相关的两个术语。本文讨论了超类和子类之间的区别。超类和子类之间的关键区别在于,超类是派生新类的现有类,而子类是继承超类属性和方法的新类。

目录

1. 概述和主要区别
2. 什么是超类
3. 什么是子类
4. 超类与子类的相似性
5. 并列比较-表格形式的超类与子类
6.摘要

什么是超类(superclass)?

在继承中,派生新类的现有类称为超类。它也被称为父类或基类。

有不同的继承类型。下面的例子说明了这一点。把A B和C看作类。

超类(superclass)和子类(subclass)的区别

图01:继承类型

超类(superclass)和子类(subclass)的区别

图02:混合遗传

根据上面的图表,超类因每个继承类型而异。在单级继承中,A是超类。在多级继承中,A是B的超类,B是C的超类。在分层继承中,A是B和C的超类。在多重继承中,A和B都是C的超类。

混合遗传是多层次和多层次遗传的结合。在左图中,A是B、C和B的超类,C是D的超类。在右边的图中,A是B和B的超类,D是C的超类。

参考下面用Java编写的程序。

超类(superclass)和子类(subclass)的区别

图03: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版本超类和子类的区别

引用

  • 发表于 2020-10-19 19:56
  • 阅读 ( 707 )
  • 分类:IT

你可能感兴趣的文章

这(this)和超级java(super in java)的区别

...支柱是继承。它提供了代码的可重用性。已经存在的类是超类,派生类是子类。super关键字可用于引用超类的对象。系统中有多个对象。“this”关键字用于引用当前对象。this和super的关键区别是'this'是一个引用变量,用于引用当...

  • 发布于 2020-10-19 18:17
  • 阅读 ( 386 )

多态性(polymorphism)和oop中的继承(inheritance in oop)的区别

...。继承对于代码的可重用性很有用。较老的类称为基类、超类或父类。派生类称为子类或子类。 继承类型 遗传有多种类型。它们分别是单级继承、多级继承、多重继承、层次继承和混合继承。 单一继承 在单继承中,有一个超...

  • 发布于 2020-10-19 21:16
  • 阅读 ( 554 )

超载(overloading)和在java中重写(overriding in java)的区别

...载是使用不同的实现创建多个同名方法的能力,重写是为超类中已经存在的子类方法提供一个实现。 目录 1. 概述和主要区别 2. Java中的重载是什么 3. Java中的重写是什么 4. Java中重载和重写的相似性 5. 并排比较——以表格形式在...

  • 发布于 2020-10-19 21:20
  • 阅读 ( 367 )

超载(overloading)和覆盖(overriding)的区别

...重写,它允许子类实现一个方法,该方法已经被它的一个超类或父类使用,允许子类方法指定与在超类中使用的被重写方法相同的名称、参数列表和返回类型或签名。 重载被认为是实用的,因为它允许程序员编写许多恰好具有...

  • 发布于 2021-06-23 10:08
  • 阅读 ( 181 )

通用服务(genericservlet)和httpservlet(httpservlet)的区别

...议而设计的。它也是一个抽象类。此外,HttpServlet的直接超类是GenericServlet。HttpServlet重写GenericServlet中的服务方法。可以用服务方法的相同参数替换服务(使用doGet()或doPost()的方法)。 由于HttpServlet是GenericServlet的子类,...

  • 发布于 2021-07-01 04:02
  • 阅读 ( 217 )

继承(inheritance)和java中的多态性(polymorphism in java)的区别

...使用已经存在的类的属性和行为。已经存在的类是父类或超类。继承属性和方法的新类称为子类或子类。继承的主要优点是它提供了代码重用性。示例程序如下。 Figure 1: Class A Figure 2: Class B Figure 3: Class Test 类具有方法sum,它将...

  • 发布于 2021-07-01 09:50
  • 阅读 ( 430 )

延伸(extends)和java实现(implements in java)的区别

...中extends和implements的主要区别在于关键字extends有助于使用超类的属性和方法,而关键字implements允许类实现接口。 Java是jamesgosling开发的一种高级通用编程语言。它用于构建各种应用程序,如独立、移动、web等。Java流行的一个主...

  • 发布于 2021-07-01 13:02
  • 阅读 ( 285 )

基类(base class)和C++中派生类(derived class in c++)的区别

...基类(base class in c++)? 在继承中,已经存在的类是父类或超类。我们也叫它基类。类中的成员可以具有访问修饰符,如private、public和protected。私有成员可以在同一类中访问,而公共成员可以由任何类访问。但是,受保护的成员可...

  • 发布于 2021-07-01 14:50
  • 阅读 ( 744 )

继承(inheritance)和作文(composition)的区别

...在的类的属性和方法。我们称这个已经存在的类为父类、超类或基类。新类称为子类、子类或派生类。开发人员不必因为继承而从一开始就编写代码。他可以使用继承在新类中使用现有类的属性和方法。因此,继承增加了代码的...

  • 发布于 2021-07-01 18:11
  • 阅读 ( 548 )

单一的(single)和多重继承(multiple inheritance)的区别

...继承和多继承的主要区别在于,在单继承中,子类从单个超类继承属性和方法,而在多继承中,子类从多个超类继承属性和方法。 面向对象编程(OOP)是企业级软件开发中常用的一种软件范式。它允许使用对象开发软件。此外...

  • 发布于 2021-07-01 18:31
  • 阅读 ( 254 )
显尘微踪
显尘微踪

0 篇文章

相关推荐