Java中的super和this关键字有什么区别?
在此是在Java中的关键字被用作当前类的对象的引用。使用它,您可以-
如果实例变量与局部变量在构造函数或方法中具有相同的名称,则将它们区分。
从类的另一种构造函数中调用另一种构造函数(参数化的构造函数或默认构造函数)。这称为显式构造函数调用。
示例
class Superclass {
int age;
Superclass(int age) {
this.age = age;
}
public void getAge() {
System.out.println("The value of the variable named age in super class is: " +age);
}
}该超级是Java关键字被用作给超类的对象的引用。像这个关键字-
如果它们具有相同的名称,则用于区分超类的成员和子类的成员。
它用于从子类调用超类构造函数。
示例
class Superclass {
int age;
Superclass(int age) {
this.age = age;
}
public void getAge() {
System.out.println("The value of the variable named age in super class is: " +age);
}
}
public class Subclass extends Superclass {
Subclass(int age) {
super(age);
}
public static void main(String argd[]) {
Subclass s = new Subclass(24);
s.getAge();
}
}输出结果
The value of the variable named age in super class is: 24