继承:
现实世界中,通过分析多种类型,然后发现有一些共同特征和一些共同行为
再将这些种类归纳为一种新类型
如: 黄色皮肤的人-----
白色皮肤的人----- 人
黑色皮肤的人-----
再如: 狗--能动,能吃,能叫(旺旺),能睡-----
猫--能动,能吃,能叫(喵喵),能睡----- 都是动物
......
计算机语言中:
应该先编写父类型再编写子类型,然后再有对象
如:先编写Animal类型,再编写Dog或Cat类型 继承父类的成员变量和方法
再使用数据时,要么创建Dog对象/Cat对象
某一个类(子类)可以从另一个类(父类)中继承一些成员变量和方法
子类还可以添加自己的独有成员变量和方法
子类:也叫派生类
父类:也叫超类,基类
关键字extends,用于继承语法
格式:
public class subClass extends SuperClass(){
}
继承中的构造器:
1、子类不能继承父类的构造器,但是子类中的构造器可以调用父类的构造器
语法:super(有参传参);(与this类似)
作用:可以更好地给成员变量赋值
PS:子类中的构造器一定会有一个调用了父类的构造器(默认无参)
父类中如果没有无参构造器,子类需要显示调用父类构造器(一定!!!调用父类的构造器,super(有参传参))
如果父类中有无参构造器,子类中的构造器可能隐式调用了父类的无参构造器(可写可不写)
即:隐藏了super(),系统默认添加
super()与this()的区别
相同点:都是调用构造器,而且必须放在首行首句(只能有一个)
不同点:super()是调用父类的构造器
this()是调用本类中其他构造器
super()继承了父类的构造器,在基础上添加自己的属性,完善构造器
继承的传递性:
继承特征有传递特性,b类型继承了a类型的特征,c类型继承了b类型的特征。
c也是简介继承了a类型的特征
继承的另一个特点:
单继承:一个子类只能继承一个父类但是一个父类可以有多个子类