java中继承指的是什么

发布时间:2020-08-20 14:46:11

来源:亿速云

阅读:55

作者:小新

这篇文章将为大家详细讲解有关java中继承指的是什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

java中继承是什么?

Java中的继承是一个对象获取父对象的所有属性和行为的机制。它是面向对象编程系统(OOP)的重要组成部分。

Java中继承的思想是,创建基于现有类的新类。从现有类中继承,可以重用父类的方法和字段。此外,还可以在当前类中添加新方法和字段。【相关视频教程推荐:Java教程】

继承表示IS-A关系,也称为父子关系。

继承中使用的术语

1、类:类是具有共同属性的一组对象。它是创建对象的模板或蓝图。

2、子类:子类是继承其他类的类。它也称为派生类,扩展类或子类。

3、超类/父类:超类是子类继承功能的类。它也称为基类或父类。

4、可重用性:正如名称所指定的那样,可重用性是一种机制,可以帮助您在创建新类时重用现有类的字段和方法。您可以使用上一课程中已定义的相同字段和方法。

为什么在java中使用继承?

1、可以实现方法重写(这样可以实现运行时多态性)。

2、继承允许我们重用代码,它提高了Java应用程序的可重用性。

Java继承的实现

Java继承的基本语法

要继承一个类,我们使用extends关键字。这里的类XYZ是子类,类ABC是父类。XYZ类继承了ABC类的属性和方法。class Subclass-name extends Superclass-name

{

//方法和字段

}

extends关键字表示我们正在创建一个从现有类中派生的新类。“extends”的含义是增加功能性。

在Java术语中,被继承的类称为父类或超类,新类称为子类。

继承示例:

在下面的继承示例中,类Bicycle是一个基类,类MountainBike是一个派生类,它扩展了Bicycle类,而类Test是一个运行程序的驱动程序类。//用java程序来说明

// 继承的概念

// 基类

class Bicycle

{

// Bicycle类有两个字段

public int gear;

public int speed;

// Bicycle类有一个构造函数

public Bicycle(int gear, int speed)

{

this.gear = gear;

this.speed = speed;

}

// Bicycle类 有三种方法

public void applyBrake(int decrement)

{

speed -= decrement;

}

public void speedUp(int increment)

{

speed += increment;

}

// toString()方法来输出 Bicycle类信息

public String toString()

{

return("没有的齿轮个数是 "+gear

+"\n"

+ "自行车的速度是"+speed);

}

}

// 派生类

class MountainBike extends Bicycle

{

// MountainBike子类增加一个字段

public int seatHeight;

// MountainBike子类 有一种构造函数

public MountainBike(int gear,int speed,

int startHeight)

{

// 调用基类(Bicycle类)构造函数

super(gear, speed);

seatHeight = startHeight;

}

// MountainBike子类增加一个方法

public void setHeight(int newValue)

{

seatHeight = newValue;

}

// 重写toString()方法

// 输出跟多Bicycle类信息

@Override

public String toString()

{

return (super.toString()+

"\n 座位高度为 "+seatHeight);

}

}

// 驱动程序类

public class Test

{

public static void main(String args[])

{

MountainBike mb = new MountainBike(3, 100, 25);

System.out.println(mb.toString());

}

}

输出:

Java中的继承类型

在类的基础上,java中可以有三种类型的继承:单一,多级和分层。

1、单一继承:在单一继承中,子类继承一个超类的特征。在下图中,类A充当派生类B的基类。

2、多级继承: 在多级继承中,派生类将继承基类,并且派生类也充当其他类的基类。在下面的图像中,类A用作派生类B的基类,后者又用作派生类C的基类。在Java中,类不能直接访问祖父母的成员。

3、分层继承:在分层继承中,一个类充当多个子类的超类(基类)。在下面的图像中,类A充当派生类B,C和D的基类。

4、多重继承(通过接口):在多重继承中,一个类可以具有多个超类,并从所有父类继承功能。请注意,Java并没有支持多重继承与类。在java中,我们只能通过 Interfaces实现多重继承。在下图中,C类来自界面A和B。

5、混合继承(通过接口):它是两种或多种上述类型的继承的混合。由于java不支持使用类进行多重继承,因此类也无法实现混合继承。在java中,我们只能通过Interfaces实现混合继承。

关于java中继承指的是什么就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

java 继承是什么_java中继承指的是什么相关推荐

  1. java 继承 意义_Java中继承,类的高级概念的知识点

    1.继承含义 在面向对象编程中,可以通过扩展一个已有的类,并继承该类的属性和行为,来创建一个新的类,这种方式称为继承(inheritance). 2.继承的优点 A.代码的可重用性 B.子类可以扩展父 ...

  2. java可以多重继承吗_Java中的多重继承与组合vs继承

    java可以多重继承吗 有时我写了几篇有关Java继承,接口和组成的文章. 在这篇文章中,我们将研究多重继承,然后了解组成优于继承的好处. Java中的多重继承 多重继承是创建具有多个超类的单个类的能 ...

  3. java父类转子类_java中什么是继承,和继承的接口的关系?

    继承的概念 继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类. 继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父 ...

  4. java 继承 实现 会重写 方法吗_java 中继承,组合,重载,重写的实现原理 (转)...

    我们知道,继承,组合,重载,重写是java语言的面向对象实现的基本特征. 那么在java内部,究竟是如何实现这些面对对象的基本特征的呢? 继承和组合是面向对象中代码复用的主要实现方式,他们可以达到类似 ...

  5. java集合类继承关系图_java集合继承关系图

    面向对象语言对事物的体现都是以对象的形式,所以为了方便对多个对象的操作,就对对象进行存储,集合就是存储对象最常用的一种方式. 数组虽然也可以存储对象,但长度是固定的:集合长度是可变的,数组中可以存储基 ...

  6. java 继承接口语法_java的继承、接口方面的语法及知识

    继承(inheritance):一个类只能继承一个类 代码复用 继承的语法: class ChildClass extends ParentsClass{ } 父类的属性子类中都存在,只是有没有权限访 ...

  7. java 判断object类型_Java 类继承机制

    封装.继承.多态是面向对象的三大特征,"继承"最主要的目的是为了实现代码的可复用性.通过父类与子类的继承关系,子类继承了父类的成员函数和成员变量,提高了代码的重复利用率.同时,子类 ...

  8. Java怎么用继承回复信息_JAVA面向对象-继承

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 Java继承: 1.继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类.继承可以理解为一个对象从另一个对象获取属性的过程. 2.如果类 ...

  9. java继承和多态_Java基础继承与多态

    Java基础第九天 继承概述 引入 首先我来写两个代码: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15//定义学生类 class Student { public void  ...

  10. java 继承的好处_java关于继承的好处

    继承的概念 继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类. 继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父 ...

最新文章

  1. 为python安装numpy和scipy(federo)
  2. 返回子串CF 312A(Whose sentence is it?-strstr(s,p))
  3. 面向对象三大特性之一:多态(C++)
  4. python 数组在最前面插入数据_Python 按照现有规则将数值插入到数组中
  5. 详解C调用lua脚本效率测试
  6. 参会指南 | 首届音视频线上峰会倒计时1天!
  7. TDA-04D8变送器数据上报阿里云
  8. 干货!一文搞懂无状态服务
  9. AngularJS中页面传参方法
  10. 25.使用getScript()方法异步加载并执行js文件
  11. 为什么黑客都用python-为什么黑客都用python Python在各领域都有着广
  12. 025_MapReduce样例Hadoop TopKey算法
  13. Flink 源码编译实战
  14. 西数、希捷、DIY移动硬盘详细拆解,暴力解析
  15. 计算机安装win10系统还原,详细教您win10怎么还原成win7
  16. error CS0246: 未能找到类型或命名空间名“A”(是否缺少 using 指令或程序集引用?)
  17. SQlException 对象名无效
  18. Ouroboros Snake POJ - 1392(数位哈密顿回路)
  19. android 录屏 sdk,浅析Android录屏 MediaRecorder
  20. 零基础学 Python 之前,你该了解这些。

热门文章

  1. 华为路由器显示连接到服务器失败怎么办,华为路由器设置好了不能用怎么办 华为路由器无法上网问题-192路由网...
  2. 小米手机计算机usb连接,小米5手机怎么连接电脑 USB调试方法教程
  3. CRM - 用户管理
  4. 用CSS实现对话气泡框!
  5. 软件测试预演环境,什么是软件测试用例预演 有何优点?-软件水平考试-考试吧...
  6. AI在医疗领域的应用 | “AI+传统行业”全盘点
  7. 为何汇新云汇聚了如此多的产品经理?
  8. 论文记录-2018-A survey on image tampering and its detection in real-world photos
  9. python 自动化合并 ts 视频流
  10. 冲刺计划sprint