面向对象常见关键字

一、this关键字   1、定义

this可以调用类的属性、方法和构造器

表示当前对象或当前正在创建的对象

它在方法内部使用,即这个方法所属对象的引用

它在构造器内部使用,表示该构造器正在初始化的对象

  2、this调用结构

this调用属性/方法

①在类的方法中,我们可以使用"this.属性"或"this.方法"的方式,调用当前对象属性或方法。但是,通常情况下,我们都选择省略"this."。特殊情况下,如果方法的形参和类的属性同名时,我们必须显式的使用"this.变量"的方式,表明此变量是属性,而非形参

面向对象常见关键字


②在类的构造器中,我们可以使用"this.属性"或"this.方法"的方式,调用当前正在创建的对象属性或方法。但是,通常情况下,我们都选择省略"this."。特殊情况下,如果构造器的形参和类的属性同名时,我们必须显式的使用"this.变量"的方式,表明此变量是属性,而非形参

       

面向对象常见关键字

 

this调用构造器

① 在类的构造器中,可以显式的使用"this(形参列表)"方式,调用本类中指定的其他构造器

        

面向对象常见关键字

 

② 构造器中不能通过"this(形参列表)"的方式调用自身构造器

③ 如果一个类中声明了n个构造器,则最多有n-1个构造器中使用了"this(形参列表)"。不能出现循环调用

④ "this(形参列表)"必须声明在类的构造器的首行

⑤ 构造器内部,最多只能声明一个"this(形参列表)",用来调用其他的构造器

二、super关键字   1、定义

super理解为:父类的

使用super来调用父类中的指定操作

super可用于访问父类中定义的属性

super可用于调用父类中定义的成员方法

super可用于在子类构造器中调用父类的构造器

super的追溯不仅限于直接父类

  2、super调用结构

super调用属性/方法

① 在子类的方法或构造器中,通过"super.属性"或者"super.方法"的方式,显式的调用父类中声明的属性或方法。但是很多情况下都可以省略"super."

        

面向对象常见关键字

 

② 当子类和父类中定义了同名的属性时,若想在子类中调用父类中声明的属性,则必须显式的使用"super.属性"的方式,表明调用的是父类中声明的属性。说明:子类的属性不会覆盖父类中同名属性。在堆空间中,两个属性都会存在

③ 当子类重写了父类中的方法以后,若想在子类的方法中调用父类中被重写的方法时,则必须显式的使用"super.方法"的方式,表明调用的是父类中被重写的方法

super调用构造器

① 在子类的构造器的首行,显示的使用“super(形参列表)”的方式,调用父类指定的构造器

        

面向对象常见关键字

 

② 针对于子类的某一个构造器而言,只能最多声明一个“super(形参列表)”

③ 在子类的构造器中,针对于"this(形参列表)"或"super(形参列表)"只能二选一,不能同时出现

④ 在子类构造器的首行,没有显式的声明"this(形参列表)"或"super(形参列表)",则默认调用的是父类中空参的构造器:super()。此时父类中必须存在空参构造器,不然报错

        

面向对象常见关键字

 

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wsszxj.html