java子类调用父类方法
时间: 2023-05-25 15:06:05 浏览: 406
在Java中,子类可以调用父类中的方法,可以通过super关键字来实现。子类可以直接调用父类中的公共方法和受保护方法,而私有方法和构造方法只能在父类内部使用。
例如,假设有一个Animal类和一个Cat类,Cat类是Animal类的子类。Animal类中有一个名为eat()的方法,Cat类可以使用该方法,如下所示:
```java
public class Animal {
public void eat() {
System.out.println("Animal eats");
}
}
public class Cat extends Animal {
public void eat() {
super.eat(); // 调用父类的eat()方法
System.out.println("Cat eats");
}
}
```
在上面的例子中,Cat类重写了Animal类的eat()方法,使用super关键字调用了父类的eat()方法,然后再打印“Cat eats”。这样就可以在子类中添加自己的行为,同时还保留了父类的行为。
相关问题
Java子类调用父类静态方法
Java中,子类可以通过使用父类的名称来调用父类的静态方法。这可以通过使用“父类名称.方法名”的语法来实现。
例如,假设有一个父类叫做ParentClass,其中包含一个静态方法叫做staticMethod()。那么,子类可以通过以下方式来调用该静态方法:
```
ParentClass.staticMethod();
```
需要注意的是,子类无法通过继承来获得父类的静态方法,因为静态方法是属于类而不是属于对象的。因此,子类需要使用上述方式来调用父类的静态方法。
java子类调用父类重写方法
当子类重写了父类的方法之后,如果要在子类中调用父类的被重写的方法,可以使用`super`关键字。具体步骤如下:
1. 在子类中定义一个与父类中被重写的方法名称和参数列表完全相同的方法。
2. 在子类的方法中使用`super.被重写的方法名称()`来调用父类中被重写的方法。
例如,假设父类中有一个`printInfo`方法,子类中重写了该方法。如果需要在子类中调用父类中被重写的`printInfo`方法,可以按照以下方式实现:
```java
public class Parent {
public void printInfo() {
System.out.println("This is parent class.");
}
}
public class Child extends Parent {
@Override
public void printInfo() {
System.out.println("This is child class.");
}
public void printParentInfo() {
super.printInfo(); // 调用父类中被重写的printInfo方法
}
}
public class Main {
public static void main(String[] args) {
Child child = new Child();
child.printInfo(); // 输出 "This is child class."
child.printParentInfo(); // 输出 "This is parent class."
}
}
```
阅读全文