@[TOC(这里写自定义目录标题)
1.继承的概念理解
继承是面向对象的三大特征之一.
可以使得子类具有父类的属性和方法,还可以在子类中重新定义.
以及追加属性和方法.
2.通过extends关键字实现继承
格式:class子类extends父类{}
3.继承带来的好处
继承可以让类与类之间产生关系.子父类可以使用父类中的非私有成员
4.继承的好处与弊端
好处:
提高代码的复用性(多个类相同的成员可以放到同一个类中)
提高了代码的维护性(如果代码需要修改,修改一处即可)
弊端:
继承让类与类之间产生了关系,增强了类的耦合性,当父类发生变化子类不得不发生改变,削弱了子类的独立性
5.继承的应用场景
使用继承需要考虑类与类之间是否存在is…a的关系,不能盲目的使用继承(is…a关系:谁是谁的一种)
6.继承中变量的访问特点
在子类方法中访问一个变量,采用的是就近原则
7.this关键字与super关键字
this:代本类对象的引用
super:代表父类储存空间的标识(可以理解为父亲对象引用)
this与super的使用区别
成员变量:
this.成员变量_访问本类成员变量
super.成员变量_访问父类的成员变量
成员方法:
this.成员方法_访问本类成员方法
super.成员方法_访问父类的成员方法
构造方法:
this(…)_访问本类构造方法
super(…)_访问父类的构造方法
8.继承中构造方法的访问特点
子类中所有的构造方法默认都会访问父类中的无参的构造方法
子类会继承父类的数据,可能还会使用父类的数据,所以在子类初始化之前,一定要先完成父类数据的初始化
每一个子类构造方法的第一条语句默认的都是super()
如果父类中没有无参构造方法,只有带参构造方法,该怎么办?
通过使用super关键字去显示调用父类的带参构造方法
在父类中自己提供一个无参构造方法
(推荐自己给出无参构造方法)
9.通过子类对象访问一个方法:
首先在子类范围,没有的话向上找父类
10方法重写概念
子类出现了和父类一模一样的方法声明(方法名一样,参数列表也必须一样)
11.方法重写的应用场景
当子类需要父类的功能,而功能主题子类有自己特有的内容时,可以重写父类的方法,这样,即沿袭了父类的功能,又定义了子类中特有的内容
12.Override注解
用来检测当前的方法,是否是重写的方法,起到了[校验]的作用
继承
最新推荐文章于 2022-11-05 10:47:07 发布