- 继承
- 作用:实现代码的复用,减少代码冗余
- 关键字:通过extends来实现继承
- 超类/父类:共有的属性和行为
派生类/子类:特有的属性和行为 - 派生类可以访问派生类和超类,但超类不能访问派生类
- 单一性:一个超类可以有多个派生类,一个派生类只有一个超类
- 传递性:继承具有传递性
public class SuperDemo { public static void main(String[] args) { Boo o = new Boo(); } } class Aoo{ Aoo(){ System.out.println("超类构造..."); } } class Boo extends Aoo{ Boo(){ //super(); //默认的,写不写都在 System.out.println("派生类构造..."); } } class Coo{ Coo(int a){ } } class Doo extends Coo{ Doo(){ super(5); //调用超类的有参构造 } /* //如下代码为默认的 Doo(){ super(); //超类若没有无参构造,则编译错误 } */ }
-
super:指代当前对象的超类对象
-
super()--------------------------------------调用超类的构造方法
-
super.方法名()----------------------------调用超类的方法
-
super.成员变量名------------------------访问超类的成员变量
-
-
注意:
-
在派生类的构造方法中若没有调用超类的构造方法,则默认super();来调用超类的无参构造,构造派生类之前必须先构造超类
super:必须写在派生类构造方法的第一行 -
若派生类调用了超类构造,则不再默认调用
-