java重写的方法可以递归调用吗给一个列子
时间: 2024-03-05 17:47:48 浏览: 88
当然可以,以下是一个简单的例子:
```java
public class Animal {
public void eat() {
System.out.println("Animal is eating.");
}
}
public class Dog extends Animal {
@Override
public void eat() {
System.out.println("Dog is eating.");
// 调用自己,实现递归
this.eat();
}
}
public class Main {
public static void main(String[] args) {
Dog dog = new Dog();
dog.eat(); // 输出 "Dog is eating." 无限循环,直到栈溢出
}
}
```
在上面的例子中,Dog 类重写了 Animal 类的 eat() 方法,并在其中调用自己实现了递归。当我们运行 Main 类的 main() 方法时,会不断输出 "Dog is eating." 直到栈溢出。
阅读全文