Java的super关键字是Java语言中的一个重要概念,它可以用来引用父类的成员变量和方法。super关键字有以下几种用法:
1、引用父类的成员变量
public class A {
int a;
}
public class B extends A {
int b;
public void printA() {
System.out.println(super.a);
}
}
上面的代码中,类A定义了一个成员变量a,类B继承了类A,并定义了一个成员变量b,类B中定义了一个printA()方法,使用super关键字引用父类A中的成员变量a。
2、引用父类的方法
public class A {
public void print() {
System.out.println("A");
}
}
public class B extends A {
public void print() {
System.out.println("B");
}
public void printA() {
super.print();
}
}
上面的代码中,类A定义了一个print()方法,类B继承了类A,并定义了一个print()方法,类B中定义了一个printA()方法,使用super关键字引用父类A中的print()方法。
3、调用父类的构造方法
public class A {
public A(int a) {
System.out.println("A:" + a);
}
}
public class B extends A {
public B(int a) {
super(a);
System.out.println("B:" + a);
}
}
上面的代码中,类A定义了一个构造方法,类B继承了类A,并定义了一个构造方法,类B中的构造方法使用super关键字调用父类A中的构造方法。
4、调用父类的实例方法
public class A {
public void print() {
System.out.println("A");
}
}
public class B extends A {
public void print() {
super.print();
System.out.println("B");
}
}
上面的代码中,类A定义了一个print()方法,类B继承了类A,并定义了一个print()方法,类B中的print()方法使用super关键字调用父类A中的print()方法。
Java的super关键字可以用来引用父类的成员变量和方法,也可以用来调用父类的构造方法和实例方法。使用super关键字可以让子类访问父类的成员变量和方法,从而实现代码的复用。