• 面向对象、方法重写、重载(overload)与重写(override)的区别、super关键字、构造方法的特殊性


    继承

            继承是为了获得多态的效果作准备(多态是面向对象的灵魂)

    继承语法

            Java中使用extends关键字实现继承。

            被继承的类:父类fatherclass 、超类superclass、基类Base class

            继承类:子类subclasses、衍生类/导出类Derived class

    java中继承的规定

             1.只能从一个父类继承(单继承)

            2.必须从一个类继承

            3, 继承可以多层继承 

    方法重写(覆盖 override)

            一个类中两个一模一样的方法是不允许的!

         如果子类父类中出现重名的成员方法,这时的访问是一种特殊情况,叫做方法重写 (Override)。

    重写的细节:

          重写发生的前提: 有子父级的继承关系

          1、方法名必须相同

          2、参数列表必须相同

          3、子类重写父类的方法的时候,方法的访问权限必须大于等于父类的方法的访

    问权限否则编译报错。

          4、子类重写父类的方法的时候,返回值类型必须是父类方法的返回值类型或该返回值类型的子类。不能返回比父类更大的数据类型:

          5、子类重写父类的方法时,不能比父类方法抛出更多的异常。

    重载(overload)与重写(override)的区别

    1、重载(overload):  

            前提:在同一个类中

            特点:

            方法名相同,参数列表不同,与其他的无关(访问控制符、返回值类型)

            列表不同: 数据类型不同,顺序不同,个数不同

    2、重写(override):

            前提: 有继承关系

            特点:

            方法名必须相同、参数列表必须相同。

            子类的返回值类型要等于或者是其子类的返回值。

    super关键字

            必须放在子类构造方法的第一句

    构造方法的特殊性

            1、创建一个对象,必须对其类及其所有祖先类的构造方法调用且只调用一次

            2、构造方法不能重写。

  • 相关阅读:
    poj 2182 Lost Cows
    mysql8 新特性注入
    类与对象(上篇)
    图解操作系统-cpu cache
    AtCoder Beginner Contest 231(D-F,H)
    20.(arcgis api for js篇)arcgis api for js面采集(SketchViewModel)
    竞赛 深度学习驾驶行为状态检测系统(疲劳 抽烟 喝水 玩手机) - opencv python
    Node.js 入门教程 4 使用 Node.js 需要了解多少 JavaScript & 5 Node.js 和浏览器的区别
    Android 12 源码分析 —— 应用层 六(StatusBar的UI创建和初始化)
    【数据结构与算法】---链表
  • 原文地址:https://blog.csdn.net/weixin_69474097/article/details/126493563