系列文章目录
文章目录
- 系列文章目录
- 前言
- 一、继承的基本概念
- 二、继承的细节
- 总结
前言
继承是类的重要特征之一。
一、继承的基本概念
关键字extends,表示Sab类继承了Base类,则Sab为Base的子类,Base为Sab的父类。继承在现实中是合法获得前人的财产,地位,权利等,在java中继承是子类获得父类的成员变量和成员方法。
Sab类中没有n2和info方法,但sab对象可以调用,说明sab对象中有n2成员变量和info成语方法。
输出结果也显示sab对象调用了n2和info方法。
在jvm内存中先加载所有类的父类Object,再加载Sab的父类Base,创建Sab对象时,加载父类的成员变量n3,再加载n1和n2,可见n3存在了sab所指的的堆上,sab对象就新增了父类及以上成员变量。
不完善或有错误请见谅,欢迎指导。
二、继承的细节
类继承的使用细节 |
---|
子类不能直接访问父类的private的成员变量和方法,但可以调用父类的公共方法实现。(间接访问) |
子类调用构造方法是必定会调用父类的构造方法(即先初始化父类再初始化子类) |
子类调用构造方法时,如果第一行没有super或this(两者不能共存)则默认super()(不会显示出来),因为继承后每个成员变量要初始化 |
总结
类的继承减少了代码的复用,可以使代码更简洁。