Java中通过实例化对象如何体现多态?
时间: 2024-09-26 17:18:26 浏览: 46
在Java中,多态通常通过对象引用变量来体现。你创建一个父类型的引用变量,然后可以将它指向具体的子类对象。这样,当你通过这个引用调用方法或访问属性时,会根据实际指向的对象执行相应的子类方法,而不是父类的方法。这种特性在处理不同类型的对象时非常有用,因为它允许你在运行时动态地改变行为。
例如:
```java
// 定义父类 Animal
class Animal {
public void sound() {
System.out.println("动物发出声音");
}
}
// 子类Dog和Cat分别继承Animal
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 类型的引用并指向子类对象
Animal animal;
// 动态绑定,根据不同对象实例化
animal = new Dog(); // 此时animal指向的是Dog对象
animal.sound(); // 输出 "狗叫"
animal = new Cat(); // 将animal改为指向Cat对象
animal.sound(); // 输出 "猫喵"
}
}
```
阅读全文