Java中,super的用法
时间: 2023-06-05 18:05:03 浏览: 57
在 Java 中,`super` 关键字有如下几种用法:
1. 调用父类的构造方法。在子类的构造方法中,可以使用 `super(...)` 来调用父类的构造方法。
2. 调用父类的成员变量或方法。如果子类中定义了与父类同名的成员变量或方法,可以使用 `super.变量名` 或 `super.方法名` 来访问父类中的成员变量或方法。
3. 调用父类的静态方法。可以使用 `super.静态方法名` 来调用父类中的静态方法。
4. 调用父类的父类的方法。如果父类还有父类(即超类),可以使用 `super.super.方法名` 来调用超类中的方法。
下面是一个示例,展示了 `super` 关键字的几种用法:
```java
class Animal {
protected String name;
public Animal(String name) {
this.name = name;
}
public void eat() {
System.out.println(name + " is eating.");
}
public static void sleep() {
System.out.println("Animal is sleeping.");
}
}
class Cat extends Animal {
private int age;
public Cat(String name, int age) {
super(name); // 调用父类的构造方法
this.age = age;
}
public void eat() {
super.eat(); // 调用父类的eat方法
System.out.println(name + " is eating fish.");
}
public static void sleep() {
super.sleep(); // 调用父类的静态方法
System.out.println("Cat is sleeping.");
}
}
```
在上面的代码中,`Cat` 类