java动态多态代码举例
时间: 2024-04-14 16:23:18 浏览: 130
java 多态实例
Java中的动态多态是通过继承和方法重写来实现的。下面是一个简单的Java动态多态的代码示例:
```java
class Animal {
public void sound() {
System.out.println("动物发出声音");
}
}
class Dog extends Animal {
@Override
public void sound() {
System.out.println("狗发出汪汪声");
}
}
class Cat extends Animal {
@Override
public void sound() {
System.out.println("猫发出喵喵声");
}
}
public class Main {
public static void main(String[] args) {
Animal animal1 = new Dog();
Animal animal2 = new Cat();
animal1.sound(); // 输出:狗发出汪汪声
animal2.sound(); // 输出:猫发出喵喵声
}
}
```
在上面的代码中,Animal类是一个基类,它有一个sound()方法。Dog和Cat类继承自Animal类,并且分别重写了sound()方法。在Main类中,我们创建了一个Animal类型的引用animal1,并将其指向一个Dog对象;同时创建了一个Animal类型的引用animal2,并将其指向一个Cat对象。当调用animal1.sound()和animal2.sound()时,实际上会根据对象的实际类型来确定调用哪个类的sound()方法,这就是动态多态的体现。
阅读全文