java实现动态多态性
时间: 2023-09-01 15:11:33 浏览: 52
Java中的动态多态性主要体现在方法的重写和接口的实现上。
方法的重写:当子类继承了父类并且重写了父类的方法时,当调用该方法时,会根据实际对象的类型来决定调用哪个方法。这种行为就是动态多态性,也称为运行时多态性。
例如:
```
class Animal {
public void move() {
System.out.println("Animal is moving");
}
}
class Dog extends Animal {
public void move() {
System.out.println("Dog is running");
}
}
public class Test {
public static void main(String[] args) {
Animal animal = new Dog();
animal.move(); // 输出Dog is running
}
}
```
接口的实现:当一个类实现了某个接口时,可以通过接口类型来引用该类对象,从而实现对该类对象的操作。这种行为也是动态多态性的一种。
例如:
```
interface Animal {
void move();
}
class Dog implements Animal {
public void move() {
System.out.println("Dog is running");
}
}
public class Test {
public static void main(String[] args) {
Animal animal = new Dog();
animal.move(); // 输出Dog is running
}
}
```
总之,Java中的动态多态性为程序提供了更大的灵活性和扩展性。