继承
1.为什么使用继承
多类之间拥有多个相同的属性或是方法,解决方式是将相同的属性和方法抽取出来,封装到新的一个类中,并继承新的类
2.继承语法
A extends B
核心要点:
(1)如果A extends B ---> 得出结论:A是B的子类,B是A的父类
(2)Java中一个类只能继承一个父类(单继承关系)
(3)继承的关键字是extends
实战:



3.Super
定义:调用父类的成员
规范:
(1)super只能出现在子类的方法和构造方法中
(2)super调用构造方法时,只能是第一句
(3)super不能访问父类的private成员



4.super实战
(1)调用父类构造器


(2)调用父类属性


(3)调用父类方法


5.访问修饰符

核心要点:
(1)private,默认,protected,public修饰的属性都可以在本类中被访问

(2)在同包不同类的情况下,private修饰的属性不可以被访问,其他三者可以被访问

(3)在不同包,但属于父子类关系的情况下,private,默认修饰的数组不能被访问,身剩余两者都可以被访问

(4)在不同包,也不属于父子类关系的情况下,只有public修饰的属性可以被访问,剩余的都不行

6.继承初始化顺序
执行顺序:
(1)父类属性初始化 ---> (2)父类构造器初始化 ---> (3)子类属性初始化 ---> (4)子类构造器初始化 (可以在debug模式测试)



7.继承-读码



8.实战




重写
1.重写
核心要点:如下方法构成重写,子类重写了父类的show()方法



2.重写规范
方法重写的规则:
(1)方法名相同


(2)参数列表相同



(3)返回值类型相同或者是其子类


(4)访问权限不能严于父类


3.拓展
(1)方法重载与方法重写的区别:

(2)构造方法不能被重写
抽象
1.抽象类
核心要点:
(1)抽象类的关键字是abstract
(2)抽象类的特点是不能实例化(例如 new Pet() 会报错)

(3)抽象方法的特点是没有方法体
![]()
如下图:




(4)抽象类中可以有非抽象方法【特例】

2.抽象方法
abstract也可用于方法——抽象方法
(1)抽象方法没有方法体


(2)抽象方法必须在抽象类里

(3)抽象方法必须在子类中被实现,除非子类是抽象类



3.抽象实战




Final
核心要点:
1.final修饰类
特点:不能 被继承



2.final修饰方法
特点:不能被重写


3.final 修饰属性
特点:不能被二次赋值

本文详细介绍了Java中的继承机制,包括为什么使用继承,继承的语法,super关键字的使用,访问修饰符的影响,初始化顺序,以及重写、抽象类和final关键字的相关规则和实践应用。重点讨论了方法重写、抽象方法和抽象类的特性,以及final修饰类、方法和属性的意义。
626

被折叠的 条评论
为什么被折叠?



