**
继承
**
上一篇提到Java是面向对象的语言,有三大特征:封装,继承,多态。所谓的封装就是不关心内部实现的具体方式。继承是多态的前提条件,这次日志更新有关于继承的知识。
我们假设有两名从业者,一名医生,一名程序员。尽管他们的工作不同,但是他们都是社会上的劳动群体,两人之间总有一些相似的特征。如果我们要编写关于这两人的两个类,他们之间的许多特征要被表述为成员变量,而我们需要吧这些相似的变量重复的写两遍,是很浪费时间的事情。所以我们需要用到继承。
所谓继承就是类与类之间的关系,我们可以把多者之间相似的部分拿出来封装到一个类中。例如上面的例子,我们定义父类Employee(一个包含了社会所有就业人员相同特征的类)。然后医生和程序员继承此类,这样只需要在更加精确的类中描述更加具有该类特色的特征就可以了。
首先说一下继承的三个特点:
1.Java继承都是单继承的,也就是一个子类只能有一个父类。
2.Java语言可以多级继承,即一个父类可以还有一个父类。假如A——>B——>C。A是B的父类,B是C的父类,A也称作是C的父类,但不是直接父类(不能打破特点一)。
3.一个子类只有一个直接父类,但是一个父类可以有很多子类。
下面是一个父类和它的两个子类:
Employee类
public class Employee {
String name;//姓名
String sex;//性别
int workNum=1000000;//工号
String phoneNum;//手机号
}
Doctor类