Java的继承

Java的继承

开发工具与关键技术:MyEclipse 10、java继承
作者:周水生
撰写时间:2019年4月12日

继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类。继承可以理解为一个对象从另一个对象获取属性的过程。
如果类A是类B的父类,而类B是类C的父类,我们也称C是A的子类,类C是从类A继承而来的。在Java中,类的继承是单一继承,也就是说,一个子类只能拥有一个父类
继承中最常使用的两个关键字是extends和implements。
这两个关键字的使用决定了一个对象和另一个对象是否是IS-A(是一个)关系。
通过使用这两个关键字,我们能实现一个对象获取另一个对象的属性。
通过extends关键字可以申明一个类是继承另外一个类而来的,一般形式如下:
Java的继承

以上的代码是个最基本的继承,B由A继承而来的,B是A的子类。而A是Object的子类,这里可以不显示地声明。
作为子类,B的实例拥有A所有的成员变量,但对于private的成员变量B却没有访问权限,这保障了A的封装性
IS-A关系
IS-A就是说:一个对象是另一个对象的一个分类。
下面是使用关键字extends实现继承。

AAA类是BBB类的父类。
AAA类是CCC类的父类。
BBB类和CCC类是AAA类的子类。
DDD类既是BBB类的子类又是AAA类的子类。

通过使用关键字extends,子类可以继承父类的除private属性外所有的属性。
Java只支持单继承,也就是说,一个类不能继承多个类
例如:
Java的继承
public class AAA extends BBB, CCC{}

Java只支持单继承(继承基本类和抽象类),但是我们可以用接口来实现(多继承接口来实现),脚本结构如:

public class AAA extends BBB implements AA1, AA2{}

一般我们继承基本类和抽象类用extends关键字,实现接口类的继承用implements关键字