【JAVA树根白话二】——继承

发布时间 2023-04-08 11:57:44作者: 文白wb

JAVA树根白话二 继承

Begin……[A B C]

  继承——面向对象的三个基本特征之一(另外两个是封装、多态)

 

  应用场景:当封装两个类后,第一个类中有一个非常复杂的成员函数,第二个类也需要同样的一个成员函数。如果第二个类重新编写成员函数,会增加开发时间,并且可能会因为一些疏忽,造成BUG。

          因此,出现了继承这种方式。第二个类继承第一个类,那么,第二个类就可直接复用第一个类中的所有成员。(私有成员,可继承,不可访问)

   A.继承说明

    继承主要实现重用代码,节省开发时间。

    ① 继承是在已有类的基础上创建新类的过程,已有类称为基类(父类),新类称为派生类(子类)

    ② 派生类继承了基类的功能,且能够对基类的功能进行扩充、修改或重定义。

    ③ 派生类复用了基类的全体数据和成员函数,具有从基类复制而来的数据成员和成员函数(基类私有成员可被继承,但是无法被访问)。

    ④ 派生类可以从一个或多个基类派生;通过一个基类派生的继承称为单继承,多个基类派生的继承为多重继承。
    ⑤ 一个类可以作为多个类的基类,一个派生类也可以作为另一个类的基类
    ⑥ 继承可传递 如果C从B中派生,B又从A中派生,那么C不仅继承了B中声明的成员,同样也继承了A中的成员。Object类作为所有类的基类。
    ⑦ 基类中的构造函数、析构函数、友元函数、静态数据成员、静态成员函数都不能被继承。基类中成员的访问方式只能决定派生类能否访问它们。
    ⑧ 基类的程序代码可以被派生类复用,提高了软件复用的效率,缩短了软件开发的周期。
    ⑨ 派生类如果定义了与继承而来的成员同名的新成员,就可以覆盖已继承的成员。但这并不因为这派生类删除了这些成员,只是不能再访问这些成员。

 

  B.继承方式