继承,从世俗的角度来解释便是子女得到父辈的财产或物品。程序中,继承是指两个类的从属关系,它可以使多种事物之间形成一种关系体系。例如贵宾和泰迪都是属于宠物犬,程序中便可以描述为贵宾和泰迪继承自动物。这篇要文章主要理清三个问题:
- 继承的概念是什么?
- 继承中如何重写父类的方法?
- 关键字super如何使用?
先看第一个问题,在Java中类的继承是指在一个现有类的基础上去构建一个新的类,构建出来的类被称作子类,现有的类被称作父类,子类会自动拥有父类所有课继承的属性和方法。同时,程序中通常用extends关键字来声明一个继承另一个类,下面就通过一个案例来演示:
继承的基本使用.JPG
上面代码的运行结果是“动物的叫声”和“我的名字叫贵宾”。其中Dog类通过extends继承了Animal类,这样Dog类便是Animal类的子类。从运行结果可以看出,子类虽然没有定义name属性和shout方法,但是却能访问这两个成员,这也就说明了子类在继承父类的时候,会自动拥有父类的所有成员。但也有一些问题需要注意下:
- Java中,类只支持单继承不允许多重继承,也就是说一个类只能有一个父类。
- 多个类可以继承同一个父类。
- 可以多层继承,即一个类的父类可以去继承另外的父类。
- Java中的子列和父类只是一种相对概念。
接下来看第二个问题,继承中重写父类方法是怎么回事。
我们知道继承关