java 子类中的super
时间: 2023-09-26 13:09:11 浏览: 47
Java中,子类可以通过super关键字来调用父类的构造函数、方法和属性。在子类中使用super关键字的语法格式如下:
- 调用父类的构造函数:`super(参数列表);`
- 调用父类的方法:`super.父类方法(参数列表);`
- 访问父类的属性:`super.父类属性;`
其中,调用父类的构造函数是在子类构造函数内部使用的,用于初始化从父类继承的成员变量。在子类构造函数的第一行,可以使用super关键字来调用父类的构造函数,例如:
```
public class Dog extends Animal {
private String breed;
public Dog(String name, int age, String breed) {
super(name, age); // 调用父类的构造函数初始化从父类继承的name和age成员变量
this.breed = breed;
}
}
```
调用父类的方法和属性可以用于访问从父类继承的方法和属性,例如:
```
public class Animal {
private String name;
public Animal(String name) {
this.name = name;
}
public void eat() {
System.out.println("Animal " + name + " is eating.");
}
}
public class Dog extends Animal {
public Dog(String name) {
super(name);
}
public void bark() {
System.out.println("Dog " + super.name + " is barking."); // 访问从父类继承的name属性
}
public void eat() {
super.eat(); // 调用父类的eat方法
System.out.println("Dog " + super.name + " is eating."); // 访问从父类继承的name属性
}
}
```
在Dog类中,可以通过super关键字访问从父类继承的name属性,以及调用父类的eat方法。