• Java继承


    一、知识点
    继承是Java面向对象编程的一块基石,因为它允许创建分等级层次的类。继承可以理解为一个对象从另一个对象获取属性的过程。
    如果类A是类B的父类,而类B是类C的父类,我们也称C是A的子类,类C是从类A继承而来的。在Java中,类的继承是单一继承,也就是说,一个子类只能拥有一个父类
    继承中最常使用的两个关键字是extends和implements。
    这两个关键字的使用决定了一个对象和另一个对象是否是IS-A(是一个)关系。
    通过使用这两个关键字,我们能实现一个对象获取另一个对象的属性。
    所有Java的类均是由java.lang.Object类继承而来的,所以Object是所有类的祖先类,而除了Object外,所有类必须有一个父类。
    通过过extends关键字可以申明一个类是继承另外一个类而来的,一般形式如下:
    在这里插入图片描述

    以上的代码图片说明,B由A继承而来的,B是A的子类。而A是Object的子类,这里可以不显示地声明。
    作为子类,B的实例拥有A所有的成员变量,但对于private的成员变量B却没有访问权限,这保障了A的封装性。
    二、IS-A关系
    IS-A就是说:一个对象是另一个对象的一个分类。
    下面是使用关键字extends实现继承。
    在这里插入图片描述

    基于上面的例子,以下说法是正确的:

    • Animal类是Mammal类的父类。
    • Animal类是Reptile类的父类。
    • Mammal类和Reptile类是Animal类的子类。
    • Dog类既是Mammal类的子类又是Animal类的子类。

    分析以上示例中的IS-A关系,如下:

    • Mammal IS-A Animal
    • Reptile IS-A Animal
    • Dog IS-A Mammal

    所以Dog IS-A Animal
    通过使用关键字extends,子类可以继承父类的除private属性外所有的属性。

  • 相关阅读:
    Python实现决策树回归模型(DecisionTreeRegressor算法)并应用网格搜索算法调优项目实战
    pygame播放视频并实现音视频同步
    【C++】C/C++内存管理
    (三)Linux 用户和权限
    进程间通信之信号量--使用信号实现生产者消费者问题
    gentool gen go自动生成表结构
    ECharts数据可视化(案例)
    法线贴图的视线原理
    r9 5900hx和i9 12900h哪个好
    Spark零基础入门实战(一)Scala安装
  • 原文地址:https://blog.csdn.net/kids_fan/article/details/127877802