可扩展性:通过多态,可以简化代码的编写和修改,新增的具体类只需实现对应的接口或继承对应的父类,而无需修改现有的代码。 public class Animal {
public void makeSound() {
System.out.println("Animal is making a sound.");
}
}
public class Cat extends Animal {
public void makeSound() {
System.out.println("Cat is meowing.");
}
}
public class Dog extends Animal {
public void makeSound() {
System.out.println("Dog is barking.");
}
}
在上面的例子中,Animal
类是基类,Cat
和Dog
类是继承自Animal
的派生类。通过多态,可以使用基类类型的引用指向派生类的对象,并根据实际的对象类型调用相应的方法。
Animal animal1 = new Cat();
Animal animal2 = new Dog();
animal1.makeSound(); // 输出: Cat is meowing.
animal2.makeSound(); // 输出: Dog is barking.
通过多态,尽管使用的是相同的方法名称,但根据对象的实际类型,调用的是对应子类的方法,从而实现了运行时的动态行为。这提供了更大的灵活性和可扩展性。