Super关键字以及内存机制(包含一个常见的面试题:this和super的使用以及区别)
关键字super
1.super表示在子类对象空间中继承自父类的成员的一块存储空间的标志。
super表示的不是父类更不是父类对象
用于区分子父类间同名的成员的,super.成员 是子类继承自父类的。
2.表示父类的构造器:
super(参数列表);
方法的覆盖(重写 Override)
当子父类间出现了相同的方法时(反过来说就是除了方法体不同,其它都相同),子类中该名称的方法会覆盖子类继承自父类的该名称的方法。也可以说是子类该名称的方法将子类继承自父类该名称的方法给重写(重新写入)。
常见面试题
this和super的使用以及区别
this有两个用法:
第一个用法代表当前对象,一般用于区分同名的成员变量和局部变量。
第二个用法代表当前类的构造器,this(参数列表),而且要放在调用者构造器的第一句。
super两个用法:
第一个代表子类对象空间中继承自父类的成员的存储空间的标志。
第二个代表父类的构造器,super(参数列表),必须放在子类构造器的第一句。