亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial programming >> java

Java OOP 中的继承:通过示例学习所有类型

什么是继承?

继承 是一种机制,其中一个类获得另一个类的属性。例如,孩子继承了他/她父母的特征。通过继承,我们可以重用现有类的字段和方法。因此,继承促进了可重用性,是 OOP 的一个重要概念。

在本教程中,您将学习-

继承类型

以下是 Java 中不同类型的继承:

单继承:

在单一继承中,一个类扩展了另一个类(仅一个类)。

<中心>

<图>

在上图中,B 类只扩展了 A 类。A 类是超类,B 类是子类。

多重继承:

多重继承是 Java 类型中的一种继承,其中一个类扩展多个类。 Java 不支持多重继承。

<中心>

<图>

如上图所示,C 类扩展了 A 类和 B 类。

多级继承:

在多级继承中,一个类可以从派生类继承。因此,派生类成为新类的基类。

<中心>

<图>

如图所示,C类是B的子类,B是A类的子类。

层次继承:

在层次继承中,一个类被多个子类继承。

<中心>

<图>

如上例,B、C、D类继承同一个A类。

混合继承:

混合继承是Java中的一种继承类型,是单继承和多继承的结合。

<中心>

<图>

按照上面的例子,A​​ 类的所有公共和受保护成员都继承到 D 类中,首先通过 B 类,然后通过 C 类。

注意: Java 不支持混合/多重继承

Java 中的继承

Java 继承 是一种机制,其中一个类获得另一个类的属性。在 Java 中,当两个类之间存在“Is-A”关系时,我们使用继承。父类称为超类,继承的类称为子类。关键字 extends 被子类用来继承超类的特性。

继承很重要,因为它导致代码的可重用性。

Java 继承语法:

class subClass extends superClass  
{  
   //methods and fields  
}  

Java 继承示例

下面是一个Java继承的例子:

<中心>

<图>

Java继承示例

class Doctor {
 void Doctor_Details() {
  System.out.println("Doctor Details...");
 }
}

class Surgeon extends Doctor {
 void Surgeon_Details() {
  System.out.println("Surgen Detail...");
 }
}

public class Hospital {
 public static void main(String args[]) {
  Surgeon s = new Surgeon();
  s.Doctor_Details();
  s.Surgeon_Details();
 }
}

超级关键字

super关键字类似于“this”关键字。

关键字 super 可用于访问父类的任何数据成员或方法。

super关键字可以用在变量、方法和构造函数级别。

语法:

super.<method-name>();

通过示例学习 OOP 中的继承

考虑与上一个示例相同的银行应用程序。

我们应该开两种不同的账户类型,一种用于储蓄,另一种用于检查(也称为活期)。

让我们比较和研究如何从结构化和面向对象的编程角度进行编码。

结构方法 :在结构化编程中,我们会创建两个函数——

  1. 一个退场
  2. 另一个用于存款操作。

由于这些功能的工作方式在各个帐户中保持不变。

OOP 的方法 :同时使用 OOPs 编程方法。我们将创建两个类。

  • 每个都有存款和取款功能的实现。
  • 这将是多余的额外工作。

软件变更请求

现在,软件行业中很常见的东西的需求规范发生了变化。您应该使用透支功能添加功能特权银行帐户。就背景而言,透支是一种工具,您可以在其中提取超过您帐户中可用余额的金额。

结构方法: 使用函数式方法,我必须修改我的撤销函数,该函数已经过测试和基线化。并添加一个像下面这样的方法来处理新的需求。

OOP 的方法: 使用 OOP 的方法,您只需要编写一个新的类,该类具有独特的撤销功能实现。我们从未接触过测试过的代码。

另一个变更请求

如果需求进一步变化怎么办?喜欢添加具有自己独特存款要求的信用卡账户

结构方法: 使用结构化方法,您必须再次更改已测试的存款代码。

OOP 的方法 :但是使用面向对象的方法,你只会创建一个新的类,它具有独特的存款方法实现(下图中红色突出显示)。

因此,尽管结构化编程最初似乎是一种简单的方法,但从长远来看,OOP 会获胜。

OOP 中继承的优势

但有人可能会争辩说,在所有类中,您都有一段重复的代码。

为了克服这个问题,你创建了一个父类,比如“account”并实现相同的存款和取款功能。并使子类继承“帐户”类。这样他们就可以访问帐户类中的提款和存款功能。

这些功能不需要单独实现。这是java中的继承。 .


java

  1. Java 继承
  2. 什么是 C# 中的接口与示例
  3. Java 中的 OOP 概念 |什么是基础与示例
  4. 什么是 OOP 中的抽象? Java 抽象类和方法
  5. Java OOP 中的封装与示例
  6. Java 变量和数据类型与示例
  7. Java 中的 String Length() 方法:如何通过示例查找
  8. Java String charAt() 方法及示例
  9. Java String contains() 方法 |用示例检查子字符串
  10. Java String endsWith() 方法及示例
  11. Java BufferedReader:如何通过示例在 Java 中读取文件
  12. Java中的插入排序算法及程序示例