Part1 2-4 java继承-上 2019-12-30

继承

图1.代码冗余


图2.代码归类


特点:

    1.利于代码复用

    2.缩短开发周期


内涵:            

    1.一种类与类之间的关系

    2.使用已存在的类的定义作为基础建立新类

    3.新类的定义可以增加新的数据或新的功能,也可以用父类的功能,但不能选择性地继承父类

    4.父类---基类、子类---派生类


关系:

满足“A is a B”的关系就可以形成继承关系

reg:猫、狗是动物---》猫、狗继承自动物

        学生、老师是人---》学生、老师继承于人


实现 :           

图3.继承的实现




重写规则:

    返回值类型、方法名、参数类型、顺序、个数都要与父类继承的方法相同。


方法重写&方法重载

   

图4.重写与重载的对比

方法重写存在,属性重写不存在。




访问修饰符:

    1. 公有的:public

    2. 私有的:private

    3. 受保护的:protected

    4. 默认


    访问修饰符代表成员调用范围

图5. 访问修饰符代表成员调用范围  




super: 区分被调用者是来自父类的成员。


子类访问父类成员

    方法:super.print();

    属性:super.name;    

    构造方法:super();


实例化顺序

图6.继承类实例化顺序


继承实例化的规则

    1.子类的构造的过程中必须调用其父类的构造方法。

    2.如果子类的构造方法中没有显示调用父类的构造方法,则系统默认调用父类无参的构造方法。

    3.如果子类构造方法中既没有显式调用父类的构造方法,而父类又没有无参的构造方法,则编译出错。

    4.使用super调用父类指定构造方法,必须在子类的构造方法的第一行。




super&this


各自的访问权限

图7.访问权限

注意!!:构造方法调用时,super和this不能同时出现

你可能感兴趣的:(Part1 2-4 java继承-上 2019-12-30)