继承关系下构造方法的访问特点

首先了解一下什么是继承:

继承的好处: 共性抽取,提高代码的复用性。

一旦发生继承关系:  子类可以使用父类的(非private修饰的)变量和方法(可继承)

                                子类也可以有自己独有的变量和方法

一、继承的语法:

public class 子类 extends 父类{

}

//遵循 is a ---> 子类是一个父类

//子类和父类是一个相对的概念

方式:1、编写父类
           2、编写子类,继承父类(extends),写自己的属性和方法


二、什么叫构造方法:

构造方法也叫做构造器,它是一种比较特殊的方法,主要用于创建实例(也就是对象)的时候进行初始化操作。

语法:

         修饰符  方法名(参数){

       } //可以有参,也可以无参

如下图所示:

继承关系下构造方法的访问特点_第1张图片

继承关系下构造方法的访问特点_第2张图片

继承关系下构造方法的访问特点_第3张图片

 继承关系中,构造方法的访问特点:
1、子类构造方法当中有一个默认隐含的“super()”调用,所以一定是先调用的父类构造,后执行的子类构造。
2、子类构造可以通过super关键字来调用父类重载构造。
3、super的父类构造调用,必须是子类构造方法的第一个语句。不能一个子类构造调用多次super构造。
总结:子类必须调用父类构造方法,不写则赠送super();写了则用写的指定的super调用,super只能有一个,还必须是第一个。

三、super关键字:代表对当前对象的直接父类对象的默认引用
super必须出现在子类中,不是其他位置
可以访问父类的成员(属性 方法 构造方法)
注意访问权限的限制,如private修饰的成员无法访问
super.name 访问属性
super.print() 访问方法
super(name) 访问父类的构造方法

四、继承关系的初始化顺序:
(普通) 父类的属性→父类构造方法→子类的属性→子类的构造方法
(静态) 父类的静态属性→父类静态的代码块→子类的静态属性→子类的静态代码块→父类的属性→父类构造方法→子类的属性→子类的构造方法

你可能感兴趣的:(JavaSE,java)