Java super()
时间: 2024-02-26 07:49:16 浏览: 17
Java中的super()是一个关键字,用于调用父类的构造方法。它可以在子类的构造方法中使用,以便在创建子类对象时初始化父类的成员变量。如果子类的构造方法没有显式地调用super(),则Java编译器会自动在子类的构造方法中插入一个无参数的super(),以便调用父类的默认构造方法。
以下是一个使用super()的Java代码示例:
```java
public class Animal {
private String name;
public Animal(String name) {
this.name = name;
}
public void eat() {
System.out.println(name + " is eating.");
}
}
public class Dog extends Animal {
private String breed;
public Dog(String name, String breed) {
super(name);
this.breed = breed;
}
public void bark() {
System.out.println("The " + breed + " dog is barking.");
}
}
public class Main {
public static void main(String[] args) {
Dog myDog = new Dog("Buddy", "Golden Retriever");
myDog.eat(); // 输出:Buddy is eating.
myDog.bark(); // 输出:The Golden Retriever dog is barking.
}
}
```
在上面的示例中,Dog类继承了Animal类,并使用super()调用了Animal类的构造方法来初始化name成员变量。这样,当创建Dog对象时,Animal类的构造方法会被自动调用,从而初始化name成员变量。