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关键字可以让子类访问父类的成员变量和方法,从而实现代码的复用。