第二十四节 面向对象 继承 另一个视频的笔记
继承
继承的本质某一批类的抽象,从而实现对现实世界更好的建模。
extends的意思是“扩展”。子类是父类的扩展。
Java中类只有单继承,没有多继承。
继承是类和类之间的一种关系。除此之外,类和类之间的关系还有依赖、组合、聚合等。
继承关系的两个类,一个为子类(派生类),一个为父类(基类)。子类继承父类,使用关键字extends来表示。
子类和父类之间,从意义上讲应该具有“is a”的关系。
object类
super
方法重写
另一个视频的笔记
继承的概述
面向对象的三大特征:封装性、继承性、多态性。
继承是多态的前提,如果没有继承,就没有多态。
继承主要解决的问题就是:共性抽取
继承关系当中的特点:
- 子类可以拥有父类的“内容”
- 子类还可以拥有自己专有的内容。
![]()
继承的格式


继承中成员变量的访问特点

区分子类方法中重名的三种变量

继承中成员方法的访问特点

继承中方法的覆盖重写-概念与特点
重写(Override)
概念:在继承关系中,方法的名称一样,参数列表也一样。
重写(Override):方法的名称一样,参数列表也【一样】。也叫做方法的覆盖、覆写。
重载(Overload):方法的名称一样,参数列表【不一样】。
方法的覆盖重写特点:创建的是子类对象,则优先用子类方法。
继承中方法的覆盖重写-注意事项
方法覆盖重写的注意事项:
1.必须保证父子类之间方法的名称相同,参数列表也相同。
@Override:写在方法前面,用来检测是不是有效的正确覆盖重写。
这个注解就算不写,只要满足要求,也是正确的方法覆盖重写
2.子类方法的返回值必须【小于等于】父类方法的返回值范围。
小扩展提示:String有一个父类是Object,也就是说Object类是所有类的公共最高父类(祖宗类),java.lang.String就是Object的子类
3.子类方法的权限必须【大于等于】父类方法的权限修饰符。
小扩展提示:public > protected > (default) > private
备注:(default)不是关键字default,而是什么都不写,留空。
继承中方法的覆盖重写-应用场景




继承中构造方法的访问特点



super关键字的三种用法
- 在子类的成员方法中,访问父类的成员变量。
- 在子类的成员方法中,访问父类的成员方法。
- 在子类的构造方法中,访问父类的构造方法。
![]()
this关键字的三种用法
super关键字用来访问父类内容,而this关键字用来访问本类内容。用法也有三种:
- 在本类的成员方法中,访问本类的成员变量。
- 在本类的成员方法中,访问本类的另一个成员方法。
- 在本类的构造方法中,访问本类的另一个构造方法。
在第三种用法当中要注意:
- this(...)调用也必须是构造方法的第一个语句,唯一一个。
- super和this两种构造调用不能同时使用。
![]()
![]()
super与this关键字图解

Java继承的三个特点
- Java语言是单继承的:一个类的直接父类只能有唯一一个。
class A{}
class B extends A{}//正确
class C{}
class D extends A,C{}//错误
- Java语言可以多级继承:我有一个父亲,我父亲还有一个父亲,也就是爷爷。
class A{}
class B extends A{}//正确
class C extends B{}//正确
- 一个子类的直接父类是唯一的,但是一个父类可以拥有很多个子类。可以有很多个兄弟姐妹,生二胎。
class A{}
class B extends A{}//正确
class C extends A{}//正确






浙公网安备 33010602011771号