在Java中,super关键字用于引用父类的成员变量和方法。它可以在子类中调用父类的构造方法,访问父类的属性和方法。
使用super调用父类构造方法
在子类的构造方法中使用super关键字可以调用父类的构造方法。这样可以避免代码重复,提高代码的复用性。
示例代码如下:
// www.javascriptcn.com code example
public class Parent {
public Parent() {
System.out.println("Parent class constructor");
}
}
public class Child extends Parent {
public Child() {
super(); // 调用父类的构造方法
System.out.println("Child class constructor");
}
}在上面的示例中,Child类继承了Parent类,并在Child类的构造方法中使用super()调用了Parent类的构造方法。
使用super访问父类属性和方法
在子类中,可以使用super关键字来访问父类的属性和方法。这样可以在子类中重写父类的方法时,还能调用父类的方法。
示例代码如下:
// www.javascriptcn.com code example
public class Parent {
public String name = "Parent";
public void printName() {
System.out.println("Name: " + name);
}
}
public class Child extends Parent {
public String name = "Child";
public void printName() {
System.out.println("Name: " + name); // 访问子类的属性
System.out.println("Parent Name: " + super.name); // 访问父类的属性
super.printName(); // 调用父类的方法
}
}在上面的示例中,Child类重写了Parent类的printName方法,并在方法中使用super关键字来访问父类的属性和方法。
这就是Java中super关键字的用法,通过使用super关键字,可以方便地调用父类的构造方法,访问父类的属性和方法,提高代码的复用性和灵活性。