Java

java中super什么意思

小亿
85
2024-09-13 14:24:20
栏目: 编程语言

在Java中,super关键字用于引用父类(超类)的一个对象。它主要有两种用途:

  1. 访问父类的成员变量(尽管这通常被认为是不良的编程实践,因为它破坏了封装性):
class Parent {
    int x = 10;
}

class Child extends Parent {
    int x = 20;

    void printBothX() {
        System.out.println("Child x: " + x);
        System.out.println("Parent x: " + super.x);
    }
}
  1. 调用父类的成员方法或构造方法:
class Parent {
    void printHello() {
        System.out.println("Hello from Parent");
    }
}

class Child extends Parent {
    void printHello() {
        System.out.println("Hello from Child");
    }

    void callParentPrintHello() {
        super.printHello(); // 调用父类的printHello()方法
    }
}
  1. 在子类构造方法中调用父类的构造方法:
class Parent {
    Parent(String message) {
        System.out.println(message);
    }
}

class Child extends Parent {
    Child() {
        super("Hello from Parent's constructor"); // 调用父类的构造方法
    }
}

总之,super关键字在Java中用于访问和操作父类的成员和方法。

0
看了该问题的人还看了