构造方法 在1.2.1中我们已经对构造方法做了实用性较强的介绍。 这里重申一下构造方法的意义:为了创建对象而产生的奇怪定义格式(没有返回值,方法名与类名相同)的方法,创建对象的同时可以为成员变量赋值,是类必须定义的方法。 构造方法不能被继承。 构造方法的public并不是固定不变的,我们在学习完四种访问权限后,可以使用其他格式修饰构造方法。 接口没有构造方法,抽象类具有构造方法。 this与super关键字除去1.2.2当中对super关键字的介绍,我们在这里以比较的方式来总结this与super的使用。 访问子类区域的成员使用this,访问父类区域的成员使用super。 成员变量符合就近原则,则最终变量的访问顺序为: 局部变量没有查找本类成员变量,本类成员变量没有查找父类成员变量,如再查找不到,查找父类的父类成员变量,依次类推。 this: 访问本类对象成员变量 this.变量名 调用本类普通方法 this.方法名(参数) 本类构造方法调用本类其他构造 本类构造方法第一行this(参数) super: 访问本类对象当中的父类对象成员变量 super.变量名 调用本类对象当中的父类普通方法 super.方法名() 本类构造方法调用父类构造 本类构造方法第一行super(参数) 注意: this与super在调用构造方法时,均必须在第一行,只能调用其中的一个。 |