Java

java中super关键字怎么使用

小亿
71
2023-10-23 15:36:47
栏目: 编程语言

在Java中,super关键字用于在子类中调用父类的构造方法、成员变量和成员方法。

  1. 调用父类的构造方法:

    • 在子类的构造方法中使用super关键字可以调用父类的构造方法。
    • super关键字必须在子类构造方法的第一行,并且只能调用一次。
    • 使用super关键字调用父类的构造方法可以传递参数,也可以不传递参数。
  2. 调用父类的成员变量和成员方法:

    • 在子类中使用super关键字可以访问父类的成员变量和成员方法。
    • 使用super关键字调用父类的成员变量时,可以在子类中对父类的成员变量进行赋值或使用。
    • 使用super关键字调用父类的成员方法时,可以在子类中调用父类的方法。

示例代码如下:

class Parent {
    String name;

    Parent(String name) {
        this.name = name;
    }

    void printName() {
        System.out.println("Parent name: " + name);
    }
}

class Child extends Parent {
    String name;

    Child(String parentName, String childName) {
        super(parentName);  // 调用父类的构造方法
        this.name = childName;
    }

    void printName() {
        super.printName();  // 调用父类的成员方法
        System.out.println("Child name: " + name);
    }

    void printParentName() {
        System.out.println("Parent name: " + super.name);  // 访问父类的成员变量
    }
}

public class Main {
    public static void main(String[] args) {
        Child child = new Child("Parent", "Child");
        child.printName();  // 调用子类的方法
        child.printParentName();  // 调用子类的方法
    }
}

以上代码中,Child类继承自Parent类,在Child的构造方法中使用super关键字调用了父类的构造方法。在Child类的方法中使用super关键字调用了父类的成员方法,并访问了父类的成员变量。在Main类中创建Child对象并调用其方法。运行结果如下:

Parent name: Parent
Child name: Child
Parent name: Parent

0
看了该问题的人还看了