zoukankan      html  css  js  c++  java
  • Java学习:继承

    格式:
    class 子类名 extends 父类名 {

    }

    父类:基类,超类
    子类:派生类

    继承的好处:
    A:提高了代码的复用性
    多个类相同的成员可以放到同一个类中
    B:提高了代码的维护性
    如果功能的代码需要修改,修改一处即可
    C:让类与类之间产生了关系,是多态的前提

    继承间的成员变量关系:
    A:名字不同,非常简单。
    B:名字相同
    首先在子类局部范围找
    然后在子类成员范围找
    最后在父类成员范围找(肯定不能访问到父类局部范围)
    如果还是没有就报错。(不考虑父亲的父亲…)
    就近原则。

    继承间的成员方法关系:
    A:方法名不同,非常简单
    B:方法名相同
    首先在子类中找
    然后在父类中找
    如果还是没有就报错。(不考虑父亲的父亲…)

    继承间构造方法的关系:
    子类中所有的构造方法默认都会访问父类中空参数的构造方法(super())

    为什么呢?
    因为子类会继承父类中的数据,可能还会使用父类的数据。
    所以,子类初始化之前,一定要先完成父类数据的初始化。
    每个子类的构造方法的第一行,有一条默认的语句:
    super();

    注意:仅仅是完成数据的初始化,创建对象目前必须用new申请空间。

    假如父类没有无参构造方法,该怎么办呢?
    A:调用父类的其他构造方法。带参构造。
    怎么访问呢?
    super(...)

    注意:
    super(…)或者this(….)必须出现在第一条语句上。
    因为如果可以放后面的话,就会对父类的数据进程多次初始化。所以,只能放在第一条语句上。

    建议:
    永远给出无参构造方法。

  • 相关阅读:
    C#练习3
    C#练习2
    C#环境变量配置及csc命令详解(转自cy88310)
    建站流程(转)
    C#练习
    程序竞赛1
    排序算法
    输出有向图的邻接矩阵
    C#高效分页代码(不用存储过程)
    存储过程详解
  • 原文地址:https://www.cnblogs.com/shaofanglazi/p/6704001.html
Copyright © 2011-2022 走看看