5d9f2bdbd71b4e323adebbe11b203dbf
继承(基础篇)

前言

今天给大家讲讲Java面向对象当中的继承,继承是面向对象三板斧继承、多态、抽象当中的基础。

概念

在现实生活当中说到继承,大家想到的是继承遗产、事业。而Java当中的继承,有点像是日常生活当中孩子对父亲血缘和基因的继承,突出在属性和方法上。

用法

在Java当中继承只能发生在类当中,一个类可以继承另一个类的方法和属性。我们将被继承的类成为父类,继承的类成为子类。其实就是把继承关系看做是父子关系,孩子继承父亲,就这么简单。

一个类继承另一个类,我们用extends关键字来表示,写在类定义的地方:

public class Son extends Father {
}

这样我们的Son类就可以继承Father类当中的属性和方法了。

权限控制

但是在Java的继承当中,并不是所有的变量能方法都可以继承的。有些时候,出于系统安全考虑,我们希望一个类的某些属性是独有的,不允许其他任何类访问,即使是子类也不例外。有些时候我们希望一些内容是公开的,可以被所有人访问,还有些时候,我们希望一些内容只能被自己和子孙访问。

这其实就是Java当中属性和方法的权限控制,还记得我们一开始学习方法的时候,让大家默认写上的public关键字吗?到了继承这里,我们就可以展开详细解释了。

权限关键字分为三种,分别是public、private和protected。

public意味着公开,所有的类都可以访问,无论是否有继承关系。

top Created with Sketch.